FreeBSD-5.3/etc/rc.d/ppp-user

#!/bin/sh
#
# $FreeBSD: src/etc/rc.d/ppp-user,v 1.5.2.1 2004/10/10 09:50:54 mtm Exp $
#

# PROVIDE: ppp-user
# REQUIRE: netif isdnd
# KEYWORD: nojail

. /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"