summaryrefslogtreecommitdiff
path: root/noncore/settings/networksettings2/etc_ppp/ip-up
blob: ec964d05e59e83181b05e4e762f2a6f12e8d0b37 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#!/bin/sh
exec 2> /tmp/IPL
set -x
#
# This script is run by the pppd after the link is established.
# This script is run by the pppd _after_ the link is brought down.
#
# variable DIR determines if it is run after establish (up) or
# after down (down)
#
# It uses run-parts to run scripts in /etc/ppp/ip-$DIR.d
#
# This script is called with the following arguments:
#    Arg  Name                          Example
#    $1   Interface name                ppp0
#    $2   The tty                       ttyS1
#    $3   The link speed                38400
#    $4   Local IP number               12.34.56.78
#    $5   Peer  IP number               12.34.56.99
#    $6   Optional ``ipparam'' value    foo

# The  environment is cleared before executing this script
# so the path must be reset
PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin
export PATH

case $0 in
  *ip-up*)
    DIR=up
    ;;
  *ip-down*)
    DIR=down
    ;;
esac

# These variables are for the use of the scripts run by run-parts
PPP_IFACE="$1"
PPP_TTY="$2"
PPP_SPEED="$3"
PPP_LOCAL="$4"
PPP_REMOTE="$5"
PPP_IPPARAM="$6"
export PPP_IFACE PPP_TTY PPP_SPEED PPP_LOCAL PPP_REMOTE PPP_IPPARAM

# as an additional convenience, $PPP_TTYNAME is set to the tty name,
# stripped of /dev/ (if present) for easier matching.
PPP_TTYNAME=`/usr/bin/basename "$2"`
export PPP_TTYNAME 

# If /var/log/ppp-ipupdown.log exists use it for logging.
if [ -e /var/log/ppp-ipupdown.log ]; then
  exec > /var/log/ppp-ipupdown.log 2>&1
fi

# This script can be used to override the .d files supplied by other packages.
if [ -x /etc/ppp/ip-${DIR}.local ]; then
  exec /etc/ppp/ip-${DIR}.local
fi

run-parts  -a "$1" -a "$2" -a "$3" -a "$4" -a "$5" -a "$6" \
		/etc/ppp/ip-${DIR}.d

if [ "$DIR" = "up" ]
then
  # if pon was called with the "quick" argument, stop pppd
  if [ -e /var/run/ppp-quick ]; then
    rm /var/run/ppp-quick
    wait
    kill $PPPD_PID
  fi
fi