diff options
Diffstat (limited to 'net-dialup/isdn4k-utils/files/3.6_pre20041219/ip-up')
-rw-r--r-- | net-dialup/isdn4k-utils/files/3.6_pre20041219/ip-up | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/net-dialup/isdn4k-utils/files/3.6_pre20041219/ip-up b/net-dialup/isdn4k-utils/files/3.6_pre20041219/ip-up new file mode 100644 index 000000000000..29719562096f --- /dev/null +++ b/net-dialup/isdn4k-utils/files/3.6_pre20041219/ip-up @@ -0,0 +1,42 @@ +#!/bin/sh + +# this is a script which is executed after connecting the ppp interface. +# look at man pppd for details + +# the followings parameters are available: +# $1 = interface-name +# $2 = tty-device +# $3 = speed +# $4 = local-IP-address +# $5 = remote-IP-address +# $6 = ipparam + +if [ "$USEPEERDNS" ]; then + + # add the server supplied DNS entries to /etc/resolv.conf + # (taken from debian's 0000usepeerdns) + + # follow any symlink to find the real file + REALRESOLVCONF=$(readlink --canonicalize /etc/resolv.conf) + + if [ "$REALRESOLVCONF" != "/etc/ppp/resolv.conf" ]; then + + # merge the new nameservers with the other options from the old configuration + { + grep --invert-match '^nameserver[[:space:]]' $REALRESOLVCONF + cat /etc/ppp/resolv.conf + } > $REALRESOLVCONF.tmp + + # backup the old configuration and install the new one + cp -a $REALRESOLVCONF $REALRESOLVCONF.pppd-backup + mv $REALRESOLVCONF.tmp $REALRESOLVCONF + + # correct permissions + chmod 0644 /etc/resolv.conf + chown root:root /etc/resolv.conf + + fi + +fi + +[ -f /etc/ppp/ip-up.local ] && . /etc/ppp/ip-up.local "$@" |