Fixed ip_packet_t if IPv6 is not available

This commit is contained in:
Tobias Brunner
2012-08-08 15:41:03 +02:00
parent 34400edc37
commit b6a071514a
2 changed files with 5 additions and 0 deletions
+1
View File
@@ -431,6 +431,7 @@ AC_CHECK_FUNCS(prctl mallinfo getpass closefrom getpwnam_r getgrnam_r)
AC_CHECK_HEADERS(sys/sockio.h glob.h)
AC_CHECK_HEADERS(net/pfkeyv2.h netipsec/ipsec.h netinet6/ipsec.h linux/udp.h)
AC_CHECK_HEADERS(netinet/ip6.h)
AC_CHECK_MEMBERS([struct sockaddr.sa_len], [], [],
[
+4
View File
@@ -21,7 +21,9 @@
#include <netinet/in.h>
#include <netinet/ip.h>
#ifdef HAVE_NETINET_IP6_H
#include <netinet/ip6.h>
#endif
typedef struct private_ip_packet_t private_ip_packet_t;
@@ -143,6 +145,7 @@ ip_packet_t *ip_packet_create(chunk_t packet)
next_header = ip->protocol;
break;
}
#ifdef HAVE_NETINET_IP6_H
case 6:
{
struct ip6_hdr *ip;
@@ -159,6 +162,7 @@ ip_packet_t *ip_packet_create(chunk_t packet)
chunk_from_thing(ip->ip6_dst), 0);
next_header = ip->ip6_nxt;
}
#endif /* HAVE_NETINET_IP6_H */
default:
DBG1(DBG_ESP, "unsupported IP version");
goto failed;