NetBSD/etc/rc.d/ppp

67 lines
1.1 KiB
Bash
Executable File

#!/bin/sh
#
# $NetBSD: ppp,v 1.5 2001/02/11 00:51:35 fredb Exp $
#
# PROVIDE: ppp
# REQUIRE: mountcritremote syslogd
#
# 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"