diff options
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | src/libstrongswan/networking/tun_device.c | 18 |
2 files changed, 17 insertions, 3 deletions
diff --git a/configure.ac b/configure.ac index a07bfa8d1..cb97145e2 100644 --- a/configure.ac +++ b/configure.ac @@ -489,7 +489,7 @@ AC_CHECK_FUNC( AC_CHECK_FUNCS(prctl mallinfo getpass closefrom getpwnam_r getgrnam_r getpwuid_r) -AC_CHECK_HEADERS(sys/sockio.h glob.h) +AC_CHECK_HEADERS(sys/sockio.h glob.h net/if_tun.h) AC_CHECK_HEADERS(net/pfkeyv2.h netipsec/ipsec.h netinet6/ipsec.h linux/udp.h) AC_CHECK_HEADERS(netinet/ip6.h, [], [], [ diff --git a/src/libstrongswan/networking/tun_device.c b/src/libstrongswan/networking/tun_device.c index af7e57140..65268d242 100644 --- a/src/libstrongswan/networking/tun_device.c +++ b/src/libstrongswan/networking/tun_device.c @@ -27,6 +27,20 @@ #include <unistd.h> #include <net/if.h> +#include "tun_device.h" + +#if !defined(__APPLE__) && !defined(__linux__) && !defined(HAVE_NET_IF_TUN_H) + +#warning TUN devices are not supported! + +tun_device_t *tun_device_create(const char *name_tmpl) +{ + DBG1(DBG_LIB, "TUN devices are not supported"); + return NULL; +} + +#else /* TUN devices supported */ + #ifdef __APPLE__ #include <net/if_utun.h> #include <netinet/in_var.h> @@ -37,8 +51,6 @@ #include <net/if_tun.h> #endif -#include "tun_device.h" - #include <library.h> #include <utils/debug.h> #include <threading/thread.h> @@ -468,3 +480,5 @@ tun_device_t *tun_device_create(const char *name_tmpl) } return &this->public; } + +#endif /* TUN devices supported */ |