From: Rumko Date: Sat, 12 Feb 2011 17:22:14 +0000 (+0100) Subject: DragonFlyBSD support X-Git-Tag: release-1.0.14~11 X-Git-Url: https://tinc-vpn.org/git/browse?p=tinc;a=commitdiff_plain;h=046d83bf91e01bc7a32e66a02758caf228bc4601 DragonFlyBSD support * added DragonFly BSD support * added a check for sys/resource.h (needed on DragonFly) --- diff --git a/configure.in b/configure.in index 078a7f1d..daeffefc 100644 --- a/configure.in +++ b/configure.in @@ -51,6 +51,10 @@ case $host_os in AC_DEFINE(HAVE_NETBSD, 1, [NetBSD]) [ rm -f src/device.c; ln -sf bsd/device.c src/device.c ] ;; + *dragonfly*) + AC_DEFINE(HAVE_DRAGONFLY, 1, [DragonFly]) + [ rm -f src/device.c; ln -sf bsd/device.c src/device.c ] + ;; *bsd*) AC_MSG_WARN("Unknown BSD variant, tinc might not compile or work!") AC_DEFINE(HAVE_BSD, 1, [Unknown BSD variant]) @@ -99,8 +103,8 @@ dnl Checks for header files. dnl We do this in multiple stages, because unlike Linux all the other operating systems really suck and don't include their own dependencies. AC_HEADER_STDC -AC_CHECK_HEADERS([stdbool.h syslog.h sys/file.h sys/ioctl.h sys/mman.h sys/param.h sys/socket.h sys/time.h sys/uio.h sys/wait.h netdb.h arpa/inet.h dirent.h]) -AC_CHECK_HEADERS([net/if.h net/if_types.h linux/if_tun.h net/if_tun.h net/if_tap.h net/ethernet.h net/if_arp.h netinet/in_systm.h netinet/in.h netinet/in6.h], +AC_CHECK_HEADERS([stdbool.h syslog.h sys/file.h sys/ioctl.h sys/mman.h sys/param.h sys/resource.h sys/socket.h sys/time.h sys/uio.h sys/wait.h netdb.h arpa/inet.h dirent.h]) +AC_CHECK_HEADERS([net/if.h net/if_types.h linux/if_tun.h net/if_tun.h net/tun/if_tun.h net/if_tap.h net/tap/if_tap.h net/ethernet.h net/if_arp.h netinet/in_systm.h netinet/in.h netinet/in6.h], [], [], [#include "have.h"] ) AC_CHECK_HEADERS([netinet/if_ether.h netinet/ip.h netinet/ip6.h], diff --git a/have.h b/have.h index 923e76ab..9e154d66 100644 --- a/have.h +++ b/have.h @@ -95,6 +95,10 @@ #include #endif +#ifdef HAVE_SYS_RESOURCE_H +#include +#endif + #ifdef HAVE_SYS_UIO_H #include #endif @@ -126,10 +130,18 @@ #include #endif +#ifdef HAVE_NET_TUN_IF_TUN_H +#include +#endif + #ifdef HAVE_NET_IF_TAP_H #include #endif +#ifdef HAVE_NET_TAP_IF_TAP_H +#include +#endif + #ifdef HAVE_NETINET_IN_SYSTM_H #include #endif diff --git a/src/bsd/device.c b/src/bsd/device.c index 5a60ab77..d0de6d9e 100644 --- a/src/bsd/device.c +++ b/src/bsd/device.c @@ -51,7 +51,7 @@ static uint64_t device_total_in = 0; static uint64_t device_total_out = 0; #if defined(TUNEMU) static device_type_t device_type = DEVICE_TYPE_TUNEMU; -#elif defined(HAVE_OPENBSD) || defined(HAVE_FREEBSD) +#elif defined(HAVE_OPENBSD) || defined(HAVE_FREEBSD) || defined(HAVE_DRAGONFLY) static device_type_t device_type = DEVICE_TYPE_TUNIFHEAD; #else static device_type_t device_type = DEVICE_TYPE_TUN;