# HG changeset patch # User Ivo Smits # Date 1318376145 -7200 # Node ID 422f3582bd38c8323a95551070eea4c6bb57b5c4 # Parent 51c6d2fc712fa69200d14bf68fcfad0137b8c244 Possible fix for tun mode on FreeBSD diff -r 51c6d2fc712f -r 422f3582bd38 src/common.c --- a/src/common.c Wed Oct 12 01:34:46 2011 +0200 +++ b/src/common.c Wed Oct 12 01:35:45 2011 +0200 @@ -176,6 +176,12 @@ #else if (!(envval = getconf("INTERFACE"))) envval = "/dev/tun0"; if ((ttfd = open(envval, O_RDWR)) < 0) return errorexitp("Could not open tun device file"); + if ((envval = getconf("TUN_MODE")) && atoi(envval)) { + int i = IFF_POINTOPOINT | IFF_MULTICAST; + ioctl(tt->fd, TUNSIFMODE, &i); + i = 1; + ioctl(tt->fd, TUNSIFHEAD, &i); + } #endif return ttfd; }