diff options
authorDoug Barton <dougb@FreeBSD.org>2006-01-04 19:18:43 +0000
committerDoug Barton <dougb@FreeBSD.org>2006-01-04 19:18:43 +0000
commitb824835191139c577ca56bab6a86c7af4bd51c96 (patch)
parenta00aca3467ce973cd6d2414c81fd5e39559374b3 (diff)
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.
Notes: svn path=/vendor/bind9/dist/; revision=154032
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 4f741a8e7de2..d80f298bf266 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 */
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.