summaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
authordougb <dougb@FreeBSD.org>2006-01-04 19:18:43 +0000
committerdougb <dougb@FreeBSD.org>2006-01-04 19:18:43 +0000
commitcfe23adacb6eecdaab74e2843766753a4732a86a (patch)
tree46869d7179dc646e635675ad20afcdc085e2c4e3 /contrib
parent13e6e55147add29e8d7701891f70aefeb3d74645 (diff)
downloadFreeBSD-src-cfe23adacb6eecdaab74e2843766753a4732a86a.zip
FreeBSD-src-cfe23adacb6eecdaab74e2843766753a4732a86a.tar.gz
After some discussion with the folks at ISC, it turns out that the _ai_pad
part of the structure was a hack to maintain binary compatibility with Sun binaries, and my understanding is that it's not needed generally on sparc systems running other operating systems. Therefore, hide this code behind the same set of tests as in lib/bind/include/netdb.h. This file is being imported on the vendor branch because a similar change (or change with similar effect) will be in the next version of BIND 9. This change will not affect other platforms in any way.
Diffstat (limited to 'contrib')
-rw-r--r--contrib/bind9/lib/bind/irs/getaddrinfo.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/contrib/bind9/lib/bind/irs/getaddrinfo.c b/contrib/bind9/lib/bind/irs/getaddrinfo.c
index 4f741a8..d80f298 100644
--- a/contrib/bind9/lib/bind/irs/getaddrinfo.c
+++ b/contrib/bind9/lib/bind/irs/getaddrinfo.c
@@ -332,7 +332,7 @@ getaddrinfo(hostname, servname, hints, res)
pai->ai_family = PF_UNSPEC;
pai->ai_socktype = ANY;
pai->ai_protocol = ANY;
-#ifdef __sparcv9
+#if defined(sun) && defined(_SOCKLEN_T) && defined(__sparcv9)
/*
* clear _ai_pad to preserve binary
* compatibility with previously compiled 64-bit
@@ -340,7 +340,7 @@ getaddrinfo(hostname, servname, hints, res)
* guaranteeing the upper 32-bits are empty.
*/
pai->_ai_pad = 0;
-#endif /* __sparcv9 */
+#endif
pai->ai_addrlen = 0;
pai->ai_canonname = NULL;
pai->ai_addr = NULL;
@@ -365,7 +365,7 @@ getaddrinfo(hostname, servname, hints, res)
}
memcpy(pai, hints, sizeof(*pai));
-#ifdef __sparcv9
+#if defined(sun) && defined(_SOCKLEN_T) && defined(__sparcv9)
/*
* We need to clear _ai_pad to preserve binary
* compatibility. See prior comment.
OpenPOWER on IntegriCloud