aboutsummaryrefslogtreecommitdiff
path: root/src/backend/libpq/ip.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/libpq/ip.c')
-rw-r--r--src/backend/libpq/ip.c32
1 files changed, 17 insertions, 15 deletions
diff --git a/src/backend/libpq/ip.c b/src/backend/libpq/ip.c
index abb0f725927..83a5145c363 100644
--- a/src/backend/libpq/ip.c
+++ b/src/backend/libpq/ip.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/libpq/ip.c,v 1.7 2003/04/22 03:52:56 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/libpq/ip.c,v 1.8 2003/06/08 17:42:59 tgl Exp $
*
* This file and the IPV6 implementation were initially provided by
* Nigel Kukard <nkukard@lbsd.net>, Linux Based Systems Design
@@ -72,27 +72,29 @@ getaddrinfo2(const char *hostname, const char *servname,
/*
- * freeaddrinfo2 - free IPv6 addrinfo structures
+ * freeaddrinfo2 - free addrinfo structures for IPv4, IPv6, or Unix
*/
void
-freeaddrinfo2(int hint_ai_family, struct addrinfo *ai)
+freeaddrinfo2(struct addrinfo *ai)
{
-#ifdef HAVE_UNIX_SOCKETS
- if (hint_ai_family == AF_UNIX)
+ if (ai != NULL)
{
- struct addrinfo *p;
-
- while (ai != NULL)
+#ifdef HAVE_UNIX_SOCKETS
+ if (ai->ai_family == AF_UNIX)
{
- p = ai;
- ai = ai->ai_next;
- free(p->ai_addr);
- free(p);
+ while (ai != NULL)
+ {
+ struct addrinfo *p = ai;
+
+ ai = ai->ai_next;
+ free(p->ai_addr);
+ free(p);
+ }
}
- }
- else
+ else
#endif /* HAVE_UNIX_SOCKETS */
- freeaddrinfo(ai);
+ freeaddrinfo(ai);
+ }
}