summaryrefslogtreecommitdiffstats
path: root/etc/rc.d/ppp-user
blob: 37071d7e25c6a45939a841f95482d5c82749903c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/bin/sh
#
# $FreeBSD$
#

# PROVIDE: ppp-user
# REQUIRE: network1 isdnd
# KEYWORD: FreeBSD

. /etc/rc.subr

name="ppp"
rcvar="ppp_enable"
start_cmd="ppp_start"
stop_cmd=":"

ppp_start()
{
	# Establish ppp mode.
	#
	if [ "${ppp_mode}" != "ddial" -a "${ppp_mode}" != "direct" \
		-a "${ppp_mode}" != "dedicated" \
		-a "${ppp_mode}" != "background" ]; then
		ppp_mode="auto"
	fi

	ppp_command="/usr/sbin/ppp -quiet -${ppp_mode}"

	# Switch on NAT mode?
	#
	case ${ppp_nat} in
	[Yy][Ee][Ss])
		ppp_command="${ppp_command} -nat"
		;;
	esac

	ppp_command="${ppp_command} ${ppp_profile}"

	echo "Starting ppp as \"${ppp_user}\""
	su -m ${ppp_user} -c "exec ${ppp_command}"

	# Re-Sync ipfilter so it picks up any new network interfaces
	#
	/etc/rc.d/ipfilter resync
}

load_rc_config $name
run_rc_command "$1"
OpenPOWER on IntegriCloud