Include local lwtunnel.h unless found in system

This commit is contained in:
Jan Moskyto Matejka 2017-04-05 14:15:43 +02:00
parent 711d617dc1
commit 54635f435a
4 changed files with 53 additions and 0 deletions

View file

@ -218,6 +218,7 @@ esac
AC_CHECK_HEADER(syslog.h, [AC_DEFINE(HAVE_SYSLOG)])
AC_CHECK_HEADER(alloca.h, [AC_DEFINE(HAVE_ALLOCA_H)])
AC_CHECK_HEADER([linux/lwtunnel.h], [AC_DEFINE(HAVE_LWTUNNEL)])
AC_MSG_CHECKING(whether 'struct sockaddr' has sa_len)
AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/socket.h>

View file

@ -74,4 +74,7 @@
/* We have LibSSH */
#undef HAVE_LIBSSH
/* We have linux lwtunnel */
#undef HAVE_LWTUNNEL
#define CONFIG_PATH ?

45
sysdep/linux/lwtunnel.h Normal file
View file

@ -0,0 +1,45 @@
#ifndef _LWTUNNEL_H_
#define _LWTUNNEL_H_
#include <linux/types.h>
enum lwtunnel_encap_types {
LWTUNNEL_ENCAP_NONE,
LWTUNNEL_ENCAP_MPLS,
LWTUNNEL_ENCAP_IP,
LWTUNNEL_ENCAP_ILA,
LWTUNNEL_ENCAP_IP6,
__LWTUNNEL_ENCAP_MAX,
};
#define LWTUNNEL_ENCAP_MAX (__LWTUNNEL_ENCAP_MAX - 1)
enum lwtunnel_ip_t {
LWTUNNEL_IP_UNSPEC,
LWTUNNEL_IP_ID,
LWTUNNEL_IP_DST,
LWTUNNEL_IP_SRC,
LWTUNNEL_IP_TTL,
LWTUNNEL_IP_TOS,
LWTUNNEL_IP_FLAGS,
LWTUNNEL_IP_PAD,
__LWTUNNEL_IP_MAX,
};
#define LWTUNNEL_IP_MAX (__LWTUNNEL_IP_MAX - 1)
enum lwtunnel_ip6_t {
LWTUNNEL_IP6_UNSPEC,
LWTUNNEL_IP6_ID,
LWTUNNEL_IP6_DST,
LWTUNNEL_IP6_SRC,
LWTUNNEL_IP6_HOPLIMIT,
LWTUNNEL_IP6_TC,
LWTUNNEL_IP6_FLAGS,
LWTUNNEL_IP6_PAD,
__LWTUNNEL_IP6_MAX,
};
#define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1)
#endif /* _LWTUNNEL_H_ */

View file

@ -31,7 +31,11 @@
#include <asm/types.h>
#include <linux/if.h>
#ifdef HAVE_LWTUNNEL
#include <linux/lwtunnel.h>
#else
#include "sysdep/linux/lwtunnel.h"
#endif
#include <linux/netlink.h>
#include <linux/rtnetlink.h>