K2LL33D SHELL

 Apache/2.4.7 (Ubuntu)
 Linux sman1baleendah 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64
 uid=33(www-data) gid=33(www-data) groups=33(www-data)
 safemode : OFF
 MySQL: ON | Perl: ON | cURL: OFF | WGet: ON
  >  / usr / bin /
server ip : 172.67.156.115

your ip : 172.71.255.70

H O M E


Filename/usr/bin/poff
Size2.77 kb
Permissionrwxr-xr-x
Ownerroot : root
Create time27-Apr-2025 09:55
Last modified23-Jan-2013 06:13
Last accessed05-Jul-2025 16:42
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
#!/bin/sh

# $Id: poff,v 1.8 1999/08/28 16:34:51 phil Exp $
# Written by John Hasler <[email protected]> and based on work
# by Phil Hands <[email protected]>. Distributed under the GNU GPL

if [ -x /usr/bin/kill ]; then
KILL="/usr/bin/kill"
else
KILL="/bin/kill"
fi
SIG=TERM
DONE="stopped"
MODE=""

usage ()
{
cat <<!EOF!
usage: $0 [option] [provider]
options:
-r Cause pppd to drop the line and redial.
-d Toggle the state of pppd's debug option.
-c Cause pppd to renegotiate compression.
-a Stop all pppd's. 'provider' will be ignored.
-h Print this help summary and exit.
-v Print version and exit.
none Stop pppd.

Options may not be combined.

If 'provider' is omitted pppd will be stopped or signalled if and only if
there is exactly one running unless the '-a' option was given. If
'provider' is supplied the pppd controlling the connection to that
provider will be stopped or signalled.
!EOF!
}

# Get option. If there are none replace the "?" that getopts puts in
# FLAG on error with "null".
getopts rdcavh FLAG
if [ "$?" -ne 0 ]; then
FLAG="null"
fi

# Check for additional options. Should be none.
getopts :rdcavh DUMMY
if [ "$?" -eq 0 ]; then
echo "$0: Illegal option -- ${OPTARG}."
exit 1
fi

case $FLAG in
"r") SIG=HUP; DONE=signalled; shift ;;
"d") SIG=USR1; DONE=signalled; shift ;;
"c") SIG=USR2; DONE=signalled; shift ;;
"a") MODE="all"; shift ;;
"v") echo "$0$Revision: 1.8 $_TrickToPrint_RCS_Revision"; exit 0 ;;
"h") usage; exit 0 ;;
"?") exit 1;
esac

# Get the PIDs of all the pppds running. Could also get these from
# /var/run, but pppd doesn't create .pid files until ppp is up.
PIDS=$(pidof pppd)

# poff is pointless if pppd isn't running.
if [ -z "$PIDS" ]; then
echo "$0: No pppd is running. None ${DONE}."
exit 1
fi

# Find out how many pppd's are running.
N=$(echo "$PIDS" | wc -w)

# If there are no arguments we can't do anything if there is more than one
# pppd running.
if [ "$#" -eq 0 -a "$N" -gt 1 -a $FLAG != "a" ]; then
echo "$0: More than one pppd running and no "-a" option and
no arguments supplied. Nothing ${DONE}."
exit 1
fi

# If either there are no arguments or '-a' was specified kill all the
# pppd's.
if [ "$#" -eq 0 -o "$MODE" = "all" ]; then
$KILL -$SIG $PIDS || {
echo "$0: $KILL failed. None ${DONE}."
exit 1
}
exit 0
fi

# There is an argument, so kill the pppd started on that provider.
PEER=$(echo $1 | sed -e 's#/#\\/#g')
PID=$(ps -o pid,cmd axw | awk "/^ *[0-9]* *(\/usr\/sbin\/)?pppd call $PEER( |\$)/ {print \$1}")

if [ "$PID" ]; then
$KILL -$SIG $PID || {
echo "$0: $KILL failed. None ${DONE}."
exit 1
}
else
echo "$0: I could not find a pppd process for provider '$1'. None ${DONE}."
exit 1
fi

exit 0