--- vpnc-script.orig 2007-03-21 13:33:57.000000000 -0300 +++ vpnc-script 2007-03-21 13:47:09.000000000 -0300 @@ -211,7 +211,7 @@ } fi -write_resolvconf() { +write_resolvconf_file() { grep '^#@VPNC_GENERATED@' /etc/resolv.conf > /dev/null 2>&1 || cp -- /etc/resolv.conf "$RESOLV_CONF_BACKUP" NEW_RESOLVCONF="#@VPNC_GENERATED@ -- this file is generated by vpnc # and will be overwritten by vpnc @@ -305,7 +305,28 @@ fi } -reset_resolvconf() { +write_resolvconf_manager() { + NEW_RESOLVCONF="" + for i in $INTERNAL_IP4_DNS; do + NEW_RESOLVCONF="$NEW_RESOLVCONF +nameserver $i" + done + if [ -n "$CISCO_DEF_DOMAIN" ]; then + NEW_RESOLVCONF="$NEW_RESOLVCONF +search $CISCO_DEF_DOMAIN" + fi + echo "$NEW_RESOLVCONF" | /sbin/resolvconf -a $TUNDEV +} + +write_resolvconf() { + if [ -x /sbin/resolvconf ]; then + write_resolvconf_manager $@ + else + write_resolvconf_file $@ + fi +} + +reset_resolvconf_file() { if [ ! -e "$RESOLV_CONF_BACKUP" ]; then return fi @@ -330,6 +351,18 @@ fi } +reset_resolvconf_manager() { + /sbin/resolvconf -d $TUNDEV +} + +reset_resolvconf() { + if [ -x /sbin/resolvconf ]; then + reset_resolvconf_manager $@ + else + reset_resolvconf_file $@ + fi +} + do_connect() { if [ -n "$CISCO_BANNER" ]; then echo "Connect Banner:"