Description: Improve kFreeBSD support Author: Gonéri Le Bouder Bug-Debian: http://bugs.debian.org/626062 Index: openvpn/src/openvpn/route.c =================================================================== --- openvpn.orig/src/openvpn/route.c 2016-12-27 19:01:52.704942715 +0100 +++ openvpn/src/openvpn/route.c 2016-12-27 19:08:24.717996310 +0100 @@ -1670,7 +1670,7 @@ argv_msg(D_ROUTE, &argv); status = openvpn_execve_check(&argv, es, 0, "ERROR: Solaris route add command failed"); -#elif defined(TARGET_FREEBSD) +#elif defined(TARGET_FREEBSD) || defined(__FreeBSD_kernel__) argv_printf(&argv, "%s add", ROUTE_PATH); @@ -1856,7 +1856,7 @@ network = print_in6_addr( r6->network, 0, &gc); gateway = print_in6_addr( r6->gateway, 0, &gc); -#if defined(TARGET_DARWIN) \ +#if defined(TARGET_DARWIN) || defined(__FreeBSD_kernel__) \ || defined(TARGET_FREEBSD) || defined(TARGET_DRAGONFLY) \ || defined(TARGET_OPENBSD) || defined(TARGET_NETBSD) @@ -2032,7 +2032,7 @@ argv_msg(D_ROUTE, &argv); status = openvpn_execve_check(&argv, es, 0, "ERROR: Solaris route add -inet6 command failed"); -#elif defined(TARGET_FREEBSD) || defined(TARGET_DRAGONFLY) +#elif defined(TARGET_FREEBSD) || defined(TARGET_DRAGONFLY) || defined(__FreeBSD_kernel__) argv_printf(&argv, "%s add -inet6 %s/%d", ROUTE_PATH, @@ -2216,7 +2216,7 @@ argv_msg(D_ROUTE, &argv); openvpn_execve_check(&argv, es, 0, "ERROR: Solaris route delete command failed"); -#elif defined(TARGET_FREEBSD) +#elif defined(TARGET_FREEBSD) || defined(__FreeBSD_kernel__) argv_printf(&argv, "%s delete -net %s %s %s", ROUTE_PATH, @@ -2323,7 +2323,7 @@ network = print_in6_addr( r6->network, 0, &gc); gateway = print_in6_addr( r6->gateway, 0, &gc); -#if defined(TARGET_DARWIN) \ +#if defined(TARGET_DARWIN) || defined(__FreeBSD_kernel__) \ || defined(TARGET_FREEBSD) || defined(TARGET_DRAGONFLY) \ || defined(TARGET_OPENBSD) || defined(TARGET_NETBSD) @@ -2458,7 +2458,7 @@ argv_msg(D_ROUTE, &argv); openvpn_execve_check(&argv, es, 0, "ERROR: Solaris route delete -inet6 command failed"); -#elif defined(TARGET_FREEBSD) || defined(TARGET_DRAGONFLY) +#elif defined(TARGET_FREEBSD) || defined(TARGET_DRAGONFLY) || defined(__FreeBSD_kernel__) argv_printf(&argv, "%s delete -inet6 %s/%d", ROUTE_PATH, @@ -3499,7 +3499,8 @@ #elif defined(TARGET_DARWIN) || defined(TARGET_SOLARIS) \ || defined(TARGET_FREEBSD) || defined(TARGET_DRAGONFLY) \ - || defined(TARGET_OPENBSD) || defined(TARGET_NETBSD) + || defined(TARGET_OPENBSD) || defined(TARGET_NETBSD) \ + || defined(__FreeBSD_kernel__) #include #include Index: openvpn/src/openvpn/tun.c =================================================================== --- openvpn.orig/src/openvpn/tun.c 2016-12-27 19:01:52.704942715 +0100 +++ openvpn/src/openvpn/tun.c 2016-12-27 19:05:14.585486719 +0100 @@ -840,7 +840,7 @@ #endif /* if defined(_WIN32) || defined(TARGET_DARWIN) || defined(TARGET_NETBSD) || defined(TARGET_OPENBSD) */ #if defined(TARGET_FREEBSD) || defined(TARGET_DRAGONFLY) \ - || defined(TARGET_OPENBSD) + || defined(TARGET_OPENBSD) || defined(__FreeBSD_kernel__) /* we can't use true subnet mode on tun on all platforms, as that * conflicts with IPv6 (wants to use ND then, which we don't do), * but the OSes want "a remote address that is different from ours" @@ -1408,7 +1408,7 @@ add_route_connected_v6_net(tt, es); } -#elif defined(TARGET_FREEBSD) || defined(TARGET_DRAGONFLY) +#elif defined(TARGET_FREEBSD) || defined(TARGET_DRAGONFLY) || defined(__FreeBSD_kernel__) in_addr_t remote_end; /* for "virtual" subnet topology */ @@ -2762,7 +2762,7 @@ } } -#elif defined(TARGET_FREEBSD) +#elif defined(TARGET_FREEBSD)||defined(__FreeBSD_kernel__) static inline int freebsd_modify_read_write_return(int len) Index: openvpn/src/openvpn/lladdr.c =================================================================== --- openvpn.orig/src/openvpn/lladdr.c 2016-12-27 19:01:52.704942715 +0100 +++ openvpn/src/openvpn/lladdr.c 2016-12-27 19:09:07.286110127 +0100 @@ -50,7 +50,7 @@ "%s %s lladdr %s", IFCONFIG_PATH, ifname, lladdr); -#elif defined(TARGET_FREEBSD) +#elif defined(TARGET_FREEBSD) || defined(__FreeBSD_kernel__) argv_printf(&argv, "%s %s ether %s", IFCONFIG_PATH, Index: openvpn/src/openvpn/syshead.h =================================================================== --- openvpn.orig/src/openvpn/syshead.h 2016-12-27 19:01:52.704942715 +0100 +++ openvpn/src/openvpn/syshead.h 2016-12-27 19:01:52.700942705 +0100 @@ -294,7 +294,7 @@ #endif /* TARGET_OPENBSD */ -#ifdef TARGET_FREEBSD +#if defined(TARGET_FREEBSD) || defined(__FreeBSD_kernel__) #ifdef HAVE_SYS_UIO_H #include Index: openvpn/src/openvpn/ssl.c =================================================================== --- openvpn.orig/src/openvpn/ssl.c 2016-12-27 19:01:52.704942715 +0100 +++ openvpn/src/openvpn/ssl.c 2016-12-27 19:03:13.433160691 +0100 @@ -2247,7 +2247,7 @@ buf_printf(&out, "IV_PLAT=mac\n"); #elif defined(TARGET_NETBSD) buf_printf(&out, "IV_PLAT=netbsd\n"); -#elif defined(TARGET_FREEBSD) +#elif defined(TARGET_FREEBSD) || defined(__FreeBSD_kernel__) buf_printf(&out, "IV_PLAT=freebsd\n"); #elif defined(TARGET_ANDROID) buf_printf(&out, "IV_PLAT=android\n");