#!/bin/sh

if [ -z "$1" ]; then 
    echo "you need specified arguements"
    exit
fi    

TUN_IDX=$1
TUN_PID=$2
PIDFILE_PPPD="/var/run/ppp-pptpc-$TUN_IDX.pid"
RESET_FILE="/var/run/pptpc-reset-$TUN_IDX"
DONT_WANTYPE_UPDATE="/var/run/dont_update_wantype"   

. /usr/bin/scriptlib
. /usr/bin/pptpc-header

kill_pptpc()
{
    addr=`get_csid_addr $CSID_C_PPTP_CLI_PEERIP $TUN_IDX`
    PPTP_PNSSERVER="`rdcsman $addr ipv4`" 
    #PPTP_PNSSERVER="`echo ${PPTP_PNSSERVER%.*}`."

    pslist=`ps | grep "pptp: call for" | grep $PPTP_PNSSERVER `
    if [ ! -z "$pslist" ]; then 
        PPTP_PID= 
        for i in $pslist 
        do 
           PPTP_PID=`echo $i` 
           break 
        done
        kill $PPTP_PID >/dev/null 2>&1 
    fi     
    #PPTP_PID=`ps | grep "pptp: call manager" | grep $PPTP_PNSSERVER |  awk '{printf("%d", $1)}'`
    #kill $PPTP_PID > /dev/null 2>&1
    #kill $TUN_PID > /dev/null 2>&1   
}

kill_pptpc_()
{
    PPTP_PID=`awk '{if(NR == 1) print $0}' $PIDFILE_PPPD`
    kill $PPTP_PID >/dev/null 2>&1 
}

main()
{
    touch $DONT_WANTYPE_UPDATE

    # Reset all IP Tables & Routing
    if [ -f $RESET_FILE ]; then
        (. $RESET_FILE)
        rm -f $RESET_FILE
    fi

    # kill PPTP tuunel
    kill_pptpc

    # Reset WebUI
    addr=`get_csid_addr $CSID_S_PPTP_CLI_PEER_PID $TUN_IDX`
    wrcsman "$addr 0"
    
    addr=`get_csid_addr $CSID_S_PPTP_CLI_PEER_IFNAME $TUN_IDX`
    wrcsman "$addr \""

    addr=`get_csid_addr $CSID_S_PPTP_CLI_PEER_VIRTUAL_IP $TUN_IDX`
    wrcsman "$addr {0.0.0.0}"

    addr=`get_csid_addr $CSID_S_PPTP_CLI_PEER_REMOTE_IP $TUN_IDX`
    wrcsman "$addr {0.0.0.0}"
    
    addr=`get_csid_addr $CSID_C_PPTP_CLI_CONNECT_TYPE $TUN_IDX`
    cnt_type=`rdcsman $addr u8`
    if [ $cnt_type -eq $PPTP_CNT_TYPE_ONDEMAND ]; then
        addr=`get_csid_addr $CSID_C_PPTP_CLI_USER_ENABLE $i`
        tun_enable=`rdcsman $addr u8`
        if [ $tun_enable -eq 1 ]; then 
            echo "PPTP tunnel $TUN_IDX starts on-demand... "
            pptpc-ondemand start $TUN_IDX
        else
            echo "PPTP tunnel $TUN_IDX stop on-demand... "
            pptpc-ondemand stop $TUN_IDX
        fi
    fi   
    rm -f $DONT_WANTYPE_UPDATE
}

#
# Main
#
main

