fix memory leak

don't leak variable 'space' when the host is numeric

Signed-off-by: Antonio Quartulli <a@unstable.cc>
pull/187/merge
Antonio Quartulli 2017-08-23 22:50:57 +08:00 committed by rofl0r
parent bb3df1e440
commit 46647bee44
1 changed files with 4 additions and 1 deletions

View File

@ -830,7 +830,10 @@ int proxy_getaddrinfo(const char *node, const char *service, const struct addrin
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;
if(hints && (hints->ai_flags & AI_NUMERICHOST)) {
free(space);
return EAI_NONAME;
}
hp = proxy_gethostbyname(node, &ghdata);
if(hp)
memcpy(&((struct sockaddr_in *) &space->sockaddr_space)->sin_addr,