Skip to content

Commit

Permalink
[build] configure needs to check for struct icmphdr for IRDP
Browse files Browse the repository at this point in the history
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.
  • Loading branch information
Paul Jakma committed Jun 22, 2007
1 parent 8454b05 commit 11770e1
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 7 deletions.
6 changes: 6 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -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
Expand Down
21 changes: 14 additions & 7 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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,
Expand All @@ -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])
Expand Down

0 comments on commit 11770e1

Please sign in to comment.