diff options
| -rw-r--r-- | ChangeLog | 6 | ||||
| -rwxr-xr-x | configure.ac | 21 | 
2 files changed, 20 insertions, 7 deletions
| @@ -1,3 +1,9 @@ +2007-06-22 Paul Jakma <paul.jakma@sun.com> + +	* configure.ac: IRDP also depends on struct icmphdr, enabling +	  only on in_pktinfo breaks when an OS acquires pktinfo, as +	  Solaris NV has. Reported by Jim Carlson. +  2007-05-10 Paul Jakma <paul.jakma@sun.com>  	* configure.ac: Add back check for inet_aton, which got dropped diff --git a/configure.ac b/configure.ac index f66336ca..1c50ef24 100755 --- a/configure.ac +++ b/configure.ac @@ -418,7 +418,7 @@ m4_define([QUAGGA_INCLUDES],  AC_CHECK_HEADERS([sys/un.h net/if.h netinet/in_systm.h netinet/in_var.h \  	net/if_dl.h net/if_var.h net/netopt.h net/route.h \ -	inet/nd.h arpa/inet.h \ +	inet/nd.h arpa/inet.h netinet/ip_icmp.h \  	fcntl.h stddef.h sys/ioctl.h syslog.h wchar.h wctype.h \  	sys/sysctl.h sys/sockio.h kvm.h sys/conf.h],  	[], [], QUAGGA_INCLUDES) @@ -462,6 +462,10 @@ QUAGGA_INCLUDES  #if HAVE_ARPA_INET_H  # include <arpa/inet.h>  #endif +/* Required for IDRP */ +#if HAVE_NETINET_IP_ICMP_H +# include <netinet/ip_icmp.h> +#endif  ])dnl  dnl V6 headers are checked below, after we check for v6 @@ -1204,8 +1208,7 @@ AC_CHECK_TYPES([struct sockaddr, struct sockaddr_in,  	socklen_t,  	struct ifaliasreq, struct if6_aliasreq, struct in6_aliasreq,  	struct nd_opt_adv_interval, struct rt_addrinfo, -	struct nd_opt_homeagent_info, struct nd_opt_adv_interval, -	struct in_pktinfo], +	struct nd_opt_homeagent_info, struct nd_opt_adv_interval],  	[], [], QUAGGA_INCLUDES)  AC_CHECK_MEMBERS([struct sockaddr.sa_len, @@ -1216,12 +1219,16 @@ AC_CHECK_MEMBERS([struct sockaddr.sa_len,  	[], [], QUAGGA_INCLUDES)  dnl --------------------------- -dnl pktinfo checks +dnl IRDP/pktinfo/icmphdr checks  dnl ---------------------------  AC_CHECK_TYPES([struct in_pktinfo],  - [if test "${enable_irdp}" != "no"; then -    AC_DEFINE(HAVE_IRDP,, IRDP) -  fi], + [AC_CHECK_TYPES([struct icmphdr], +   [if test "${enable_irdp}" != "no"; then +      AC_DEFINE(HAVE_IRDP,, IRDP) +    fi], +   [if test "${enable_irdp}" = "yes"; then +      AC_MSG_ERROR(['IRDP requires in_pktinfo at the moment!']) +    fi], [QUAGGA_INCLUDES])],   [if test "${enable_irdp}" = "yes"; then      AC_MSG_ERROR(['IRDP requires in_pktinfo at the moment!'])    fi], [QUAGGA_INCLUDES]) | 
