proxy_getaddrinfo: fix case when func was used in lieu of inet_aton

This commit is contained in:
rofl0r 2014-01-22 16:13:20 +01:00
parent 63ad1b4d70
commit b76aa653c9

View File

@ -827,6 +827,9 @@ int proxy_getaddrinfo(const char *node, const char *service, const struct addrin
if(!space) goto err1; if(!space) goto err1;
if(node && !inet_aton(node, &((struct sockaddr_in *) &space->sockaddr_space)->sin_addr)) { if(node && !inet_aton(node, &((struct sockaddr_in *) &space->sockaddr_space)->sin_addr)) {
/* some folks (nmap) use getaddrinfo() with AI_NUMERICHOST to check whether a string
containing a numeric ip was passed. we must return failure in that case. */
if(hints && (hints->ai_flags & AI_NUMERICHOST)) return EAI_NONAME;
hp = proxy_gethostbyname(node, &ghdata); hp = proxy_gethostbyname(node, &ghdata);
if(hp) if(hp)
memcpy(&((struct sockaddr_in *) &space->sockaddr_space)->sin_addr, memcpy(&((struct sockaddr_in *) &space->sockaddr_space)->sin_addr,