--- trunk/ppp/ip-down 2009/05/11 09:39:01 795 +++ trunk/ppp/ip-down 2009/05/11 09:39:21 796 @@ -1,41 +1,17 @@ #!/bin/sh -# $Header: /root/magellan-cvs/src/ppp/ip-down,v 1.1 2007-08-18 18:50:53 niro Exp $ -# -# This script is run by pppd when there's a successful ppp connection. -# -# the following parameters are available: -# $1 = interface-name -# $2 = tty-device +# This script is run by pppd after the link is brought down. +# It executes all the scripts available in /etc/ppp/ip-down.d directory, +# with the following parameters: +# $1 = interface name (e.g. ppp0) +# $2 = tty device # $3 = speed -# $4 = local-IP-address -# $5 = remote-IP-address -# $6 = ipparam +# $4 = local IP address +# $5 = remote IP address +# $6 = ipparam (user specified parameter, see man pppd) -if [[ ${USEPEERDNS} ]] -then - if [ -x /sbin/resolvconf ] - then - resolvconf -d "$1" - else - # taken from debian's 0000usepeerdns - # follow any symlink to find the real file - REALRESOLVCONF=$(readlink --canonicalize /etc/resolv.conf) +cd /etc/ppp/ip-down.d || exit - if [[ ${REALRESOLVCONF} != /etc/ppp/resolv.conf ]] - then - # if an old resolv.conf file exists, restore it - if [ -e ${REALRESOLVCONF}.pppd-backup ] - then - mv ${REALRESOLVCONF}.pppd-backup ${REALRESOLVCONF} - fi - fi - fi -fi - -if [ -f /etc/conf.d/net.$1 ] -then - /etc/rc.d/init.d/network stop $1 > /dev/null -fi - -[ -f /etc/ppp/ip-down.local ] && . /etc/ppp/ip-down.local "$@" +for SCRIPT in *.sh ; do + . ./"${SCRIPT}" "$@" +done