43 lines
1.0 KiB
Bash
43 lines
1.0 KiB
Bash
#!/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 '^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 "$@"
|