Commit c195f74e authored by Michael Graff's avatar Michael Graff
Browse files

According to the latest KAME release, recently added to NetBSD, it isn't

permitted to directly include netinet6/in6.h anymore.  The RFCs and drafts
all say to include netinet/in.h and that will define the ipv6 goop if the
host supports it.

Rather than break (broken) OSs, I added a check for NetBSD in configure
that will force the definitions of

	ISC_PLATFORM_HAVENETINET6IN6H
and	LWRES_PLATFORM_HAVENETINET6IN6H

to be #undef.

This isn't really as clean as I'd like.  I'd rather be hard and say an OS
that requires direct include of netinet6/in6.h is broken, and remove it
fully from our code.
parent 51358442
This diff is collapsed.
......@@ -13,7 +13,7 @@ dnl PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
dnl ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
dnl SOFTWARE.
AC_REVISION($Revision: 1.110 $)
AC_REVISION($Revision: 1.111 $)
AC_PREREQ(2.13)
......@@ -219,7 +219,10 @@ AC_HEADER_STDC
AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h sys/sockio.h netinet6/in6.h)
#
# HAVE_NETINET6_IN6_H needs to go in platform.h.
# HAVE_NETINET6_IN6_H needs to go in platform.h. According to reliable
# sources, however, netinet6/in6.h isn't supposed to be included directly,
# but netinet/in.h is. NetBSD at least insists on this, and will not
# compile with it directly included.
#
case "$ac_cv_header_netinet6_in6_h" in
yes)
......@@ -231,6 +234,15 @@ no)
LWRES_PLATFORM_HAVENETINET6IN6H="#undef LWRES_PLATFORM_HAVENETINET6IN6H"
;;
esac
#
# If It is NetBSD, set them to undef.
#
case "$host" in
*-netbsd*)
ISC_PLATFORM_HAVENETINET6IN6H="#undef ISC_PLATFORM_HAVENETINET6IN6H"
LWRES_PLATFORM_HAVENETINET6IN6H="#undef LWRES_PLATFORM_HAVENETINET6IN6H"
;;
esac
AC_SUBST(ISC_PLATFORM_HAVENETINET6IN6H)
AC_SUBST(LWRES_PLATFORM_HAVENETINET6IN6H)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment