[core] fix result copy from getaddrinfo()

(thx avij)
This commit is contained in:
Glenn Strauss 2016-07-27 22:26:32 -04:00
parent a69a803e35
commit a62bff9866
1 changed files with 2 additions and 1 deletions

View File

@ -283,10 +283,11 @@ static int network_server_init(server *srv, buffer *host_token, specific_config
if (0 != (r = getaddrinfo(host, NULL, &hints, &res))) {
hints.ai_family = AF_INET;
if (EAI_ADDRFAMILY == r && 0 == getaddrinfo(host, NULL, &hints, &res)) {
memcpy(&srv_socket->addr.ipv4, res->ai_addr, res->ai_addrlen);
srv_socket->addr.ipv4.sin_family = AF_INET;
srv_socket->addr.ipv4.sin_port = htons(port);
memcpy(&(srv_socket->addr.ipv4.sin_addr.s_addr), res->ai_addr, res->ai_addrlen);
addr_len = sizeof(struct sockaddr_in);
/*assert(addr_len == res->ai_addrlen);*/
freeaddrinfo(res);
break;
}