1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-28 23:42:10 +03:00

When reporting the server as not responding, if the hostname was

supplied, also print the IP address.  This allows IPv4 and IPv6 failures
to be distinguished.  Also useful when a hostname resolves to multiple
IP addresses.

Also, remove use of inet_ntoa() and use our own inet_net_ntop() in all
places, including in libpq, because it is thread-safe.
This commit is contained in:
Bruce Momjian
2010-11-24 17:04:19 -05:00
parent 725d52d0c2
commit ba11258ccb
9 changed files with 313 additions and 250 deletions

View File

@ -388,16 +388,14 @@ getnameinfo(const struct sockaddr * sa, int salen,
if (node)
{
int ret = -1;
if (sa->sa_family == AF_INET)
{
char *p;
p = inet_ntoa(((struct sockaddr_in *) sa)->sin_addr);
ret = snprintf(node, nodelen, "%s", p);
if (inet_net_ntop(AF_INET, ((struct sockaddr_in *) sa)->sin_addr,
sa->sa_family == AF_INET ? 32 : 128,
node, nodelen) == NULL)
return EAI_MEMORY;
}
if (ret == -1 || ret > nodelen)
else
return EAI_MEMORY;
}