diff debian/static/etc/network/if-pre-up.d/quicktun @ 32:51c6d2fc712f V2.1.8

Fixes contributed by Daniel Dickinson <daniel@cshore.neomailbox.net>
author Ivo Smits <Ivo@UCIS.nl>
date Wed, 12 Oct 2011 01:34:46 +0200
parents 3400045a57b8
children
line wrap: on
line diff
--- a/debian/static/etc/network/if-pre-up.d/quicktun	Wed Oct 12 01:11:48 2011 +0200
+++ b/debian/static/etc/network/if-pre-up.d/quicktun	Wed Oct 12 01:34:46 2011 +0200
@@ -1,15 +1,17 @@
 #!/bin/sh
 test -n "${IF_QT_REMOTE_ADDRESS}" || exit 0
 test -z "${IF_QT_NO_PRECREATE}" || exit 0
-if [ -n "${IF_QT_TUN_MODE}" ]; then
+if [ -n "${IF_QT_TUN_MODE}" ] && [ "${IF_QT_TUN_MODE}" = "1" ]; then
 	DEVTYPE="tun"
 else
 	DEVTYPE="tap"
 fi
 if [ -x /usr/sbin/openvpn ]; then
 	/usr/sbin/openvpn --mktun --dev "${IFACE}" --dev-type "${DEVTYPE}" --user quicktun
-elif [ -x /sbin/ip ]; then
+elif [ -x /sbin/ip ] && /sbin/ip tuntap 2>&1 >/dev/null; then
 	/sbin/ip tuntap add dev "${IFACE}" mode "${DEVTYPE}" user quicktun
+elif [ -x /usr/sbin/tunctl ]; then
+	/usr/sbin/tunctl -u quicktun -t "${IFACE}"
 else
-	echo "Unable to pre-create tun/tap interface. Run QuickTun as root."
+	echo "Unable to pre-create tun/tap interface. Run QuickTun as root by setting QT_NO_PRECREATE."
 fi