Make the main script wait for the device to be *up* not just exist.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
# For a real one, see http://www.infradead.org/openconnect/vpnc-script.html
if [ "$reason" = "connect" ]; then
- ip link show "$TUNDEV"
- ip link set dev "$TUNDEV" up
- ip link set dev "$TUNDEV" mtu "$INTERNAL_IP4_MTU"
+ ip link set dev "$TUNDEV" up mtu "$INTERNAL_IP4_MTU"
ip addr add "$INTERNAL_IP4_ADDRESS/32" peer "$INTERNAL_IP4_ADDRESS" dev "$TUNDEV"
ip -6 addr add $INTERNAL_IP6_NETMASK dev $TUNDEV
rm -f ${DISCONNECT_FILE}
. `dirname $0`/common.sh
-set -x
-
rm -f ${DISCONNECT_FILE}
if test -z "${IP}";then
echo " * wait for ${TUNDEV}"
TIMEOUT=10
-while ! ${CMDNS1} ip addr list dev ${TUNDEV} &>/dev/null; do
+while ! ${CMDNS1} ip link show dev ${TUNDEV} 2>/dev/null | grep -q UP; do
TIMEOUT=$(($TIMEOUT - 1))
if [ $TIMEOUT -eq 0 ]; then
echo "Timed out waiting for ${TUNDEV}"