68 lines
1.1 KiB
Bash
Executable File
68 lines
1.1 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# $NetBSD: ppp,v 1.6 2002/03/22 04:33:59 thorpej Exp $
|
|
#
|
|
|
|
# PROVIDE: ppp
|
|
# REQUIRE: mountcritremote syslogd
|
|
# BEFORE: SERVERS
|
|
#
|
|
# Note that this means that syslogd will not be listening on
|
|
# any PPP addresses. This is considered a feature.
|
|
#
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="ppp"
|
|
start_cmd="ppp_start"
|
|
stop_cmd="ppp_stop"
|
|
sig_stop="-INT"
|
|
sig_hup="-HUP"
|
|
hup_cmd="ppp_hup"
|
|
extra_commands="hup"
|
|
|
|
ppp_start()
|
|
{
|
|
# /etc/ppp/peers and $ppp_peers contain boot configuration
|
|
# information for pppd. each value in $ppp_peers that has a
|
|
# file in /etc/ppp/peers of the same name, will be run as
|
|
# `pppd call <peer>'.
|
|
#
|
|
if [ -n "$ppp_peers" ]; then
|
|
set -- $ppp_peers
|
|
echo -n "Starting pppd:"
|
|
while [ $# -ge 1 ]; do
|
|
peer=$1
|
|
shift
|
|
if [ -f /etc/ppp/peers/$peer ]; then
|
|
pppd call $peer
|
|
echo -n " $peer"
|
|
fi
|
|
done
|
|
echo "."
|
|
fi
|
|
}
|
|
|
|
ppp_hup()
|
|
{
|
|
pids="`check_process pppd`"
|
|
if [ -n "$pids" ]; then
|
|
for pid in $pids; do
|
|
kill $sig_hup $pid
|
|
done
|
|
fi
|
|
}
|
|
|
|
ppp_stop()
|
|
{
|
|
pids="`check_process pppd`"
|
|
if [ -n "$pids" ]; then
|
|
for pid in $pids; do
|
|
kill $sig_stop $pid
|
|
done
|
|
fi
|
|
}
|
|
|
|
load_rc_config $name
|
|
run_rc_command "$1"
|