#!/bin/sh # # This script is run by the pppd _after_ the link is brought down. # It uses run-parts to run scripts in /etc/ppp/ip-down.d, so to delete # routes, unset IP addresses etc. you should create script(s) there. # # Be aware that other packages may include /etc/ppp/ip-down.d scripts (named # after that package), so choose local script names with that in mind. # # 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 T="$CONNECT_TIME" day=$(($T/86400)) hour=`printf %02d $((($T/3600)-($day*24)))` h=$((($T/3600)-($day*24))) min=`printf %02d $((($T/60)-($day*24)-($h*60)-($day*1416)))` sec=`printf %02d $(($T-($T/60)*60))` tx=$(($BYTES_SENT/1024/1024)) rx=$(($BYTES_RCVD/1024/1024)) if [[ "$4" == "80.252.133.24" ]] then killall pppd xl2tpd fi echo "`date +"%d.%m.%Y %T"` Disonnected IF: $1 Time: $day.$hour:$min:$sec TX: $tx RX: $rx" >>/etc/ppp/connection.log # 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 echo $0 $@ echo fi # This script can be used to override the .d files supplied by other packages. if [ -x /etc/ppp/ip-down.local ]; then exec /etc/ppp/ip-down.local "$@" fi run-parts /etc/ppp/ip-down.d \ --arg="$1" --arg="$2" --arg="$3" --arg="$4" --arg="$5" --arg="$6"