From 0b579a345617b0376dc3c30c09316246b9b74525 Mon Sep 17 00:00:00 2001 From: Holger Weiss Date: Mon, 24 Sep 2007 00:30:14 +0000 Subject: [PATCH] Let ./configure --without-ipv6 suppress non-IPv4 DNS lookups (noted by Mark Frost on nagios-users@) git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1794 f882894a-f735-0410-b71e-b25c423dba1c --- NEWS | 1 + configure.in | 26 ++++++++++++++++++-------- plugins/netutils.c | 4 ++++ 3 files changed, 23 insertions(+), 8 deletions(-) diff --git a/NEWS b/NEWS index 8b160c8..ffff548 100644 --- a/NEWS +++ b/NEWS @@ -30,6 +30,7 @@ This file documents the major additions and syntax changes between releases. The "negate" utility can now remap custom states Check_radius now supports radiusclient-ng Check_by_ssh now supports multiline output + IPv6 support can now be disabled using ./configure --without-ipv6 1.4.9 4th June 2006 Inclusion of contrib/check_cluster2 as check_cluster with some improvements diff --git a/configure.in b/configure.in index ee928d4..5153b1c 100644 --- a/configure.in +++ b/configure.in @@ -275,9 +275,15 @@ else AC_SUBST(MYSQLCFLAGS) fi +AC_ARG_WITH([ipv6], + [AS_HELP_STRING([--with-ipv6], [support IPv6 @<:@default=check@:>@])], + [], [with_ipv6=check]) + dnl Check for AF_INET6 support - unistd.h required for Darwin -AC_CACHE_CHECK([for IPv6 support], with_ipv6, [ - AC_TRY_COMPILE([#ifdef HAVE_UNISTD_H +if test "$with_ipv6" != "no"; then + AC_CACHE_CHECK([for IPv6 support], np_cv_sys_ipv6, [ + AC_TRY_COMPILE( + [#ifdef HAVE_UNISTD_H #include #endif #include @@ -288,12 +294,16 @@ AC_CACHE_CHECK([for IPv6 support], with_ipv6, [ sin6.sin6_family = AF_INET6; sin6.sin6_port = 587; p = &sin6.sin6_addr;], - [with_ipv6=yes], - [with_ipv6=no]) - ]) - -if test x"$with_ipv6" != xno ; then - AC_DEFINE(USE_IPV6,1,[Enable IPv6 support]) + [np_cv_sys_ipv6=yes], + [np_cv_sys_ipv6=no]) + ]) + if test "$np_cv_sys_ipv6" = "no" -a "$with_ipv6" != "check"; then + AC_MSG_FAILURE([--with-ipv6 was given, but test for IPv6 support failed]) + fi + if test "$np_cv_sys_ipv6" = "yes"; then + AC_DEFINE(USE_IPV6,1,[Enable IPv6 support]) + fi + with_ipv6="$np_cv_sys_ipv6" fi diff --git a/plugins/netutils.c b/plugins/netutils.c index e6ffc54..7bf2254 100644 --- a/plugins/netutils.c +++ b/plugins/netutils.c @@ -39,7 +39,11 @@ unsigned int socket_timeout = DEFAULT_SOCKET_TIMEOUT; int econn_refuse_state = STATE_CRITICAL; int was_refused = FALSE; +#if USE_IPV6 int address_family = AF_UNSPEC; +#else +int address_family = AF_INET; +#endif /* handles socket timeouts */ void -- 2.30.2