mtree: No longer create /usr/libdata/msdosfs.
[dragonfly.git] / etc / rc.d / ppp-user
1 #!/bin/sh
2 #
3 # $FreeBSD: src/etc/rc.d/ppp-user,v 1.4 2003/04/18 17:55:05 mtm Exp $
4 # $DragonFly: src/etc/rc.d/ppp-user,v 1.4 2005/11/19 21:47:32 swildner Exp $
5 #
6
7 # PROVIDE: ppp-user
8 # REQUIRE: netif isdnd
9
10 . /etc/rc.subr
11
12 name="ppp"
13 rcvar="ppp_enable"
14 start_cmd="ppp_start"
15 stop_cmd="ppp_stop"
16
17 ppp_start()
18 {
19         # Establish ppp mode.
20         #
21         if [ "${ppp_mode}" != "ddial" -a "${ppp_mode}" != "direct" \
22                 -a "${ppp_mode}" != "dedicated" \
23                 -a "${ppp_mode}" != "background" ]; then
24                 ppp_mode="auto"
25         fi
26
27         ppp_command="/usr/sbin/ppp -quiet -${ppp_mode}"
28
29         # Switch on NAT mode?
30         #
31         case ${ppp_nat} in
32         [Yy][Ee][Ss])
33                 ppp_command="${ppp_command} -nat"
34                 ;;
35         esac
36
37         ppp_command="${ppp_command} ${ppp_profile}"
38
39         echo "Starting ppp as \"${ppp_user}\""
40         su -m ${ppp_user} -c "exec ${ppp_command}"
41
42         # Re-Sync ipfilter so it picks up any new network interfaces
43         #
44         /etc/rc.d/ipfilter resync
45 }
46
47 ppp_stop()
48 {
49         pids=`check_process /usr/sbin/ppp`
50         if [ -n "${pids}" ]; then
51                 for pid in ${pids}; do
52                         kill -TERM ${pid}
53                 done
54                 wait_for_pids ${pids}
55         fi
56         /etc/rc.d/ipfilter resync
57 }
58
59 load_rc_config $name
60 run_rc_command "$1"