diff --git a/etc/defaults/rc.conf b/etc/defaults/rc.conf index b8b08e08d239..b0433ac70a63 100644 --- a/etc/defaults/rc.conf +++ b/etc/defaults/rc.conf @@ -146,6 +146,7 @@ gif_interfaces="NO" # List of GIF tunnels (or "NO"). # User ppp configuration. ppp_enable="NO" # Start user-ppp (or NO). +ppp_program="/usr/sbin/ppp" # Path to user-ppp program. ppp_mode="auto" # Choice of "auto", "ddial", "direct" or "dedicated". # For details see man page for ppp(8). Default is auto. ppp_nat="YES" # Use PPP's internal network address translation or NO. diff --git a/etc/rc.d/ppp b/etc/rc.d/ppp index 305ee1cc50ac..f13175cd1b1a 100644 --- a/etc/rc.d/ppp +++ b/etc/rc.d/ppp @@ -10,11 +10,11 @@ . /etc/rc.subr name="ppp" -rcvar="ppp_enable" -start_cmd="ppp_start" -stop_cmd=":" +rcvar=`set_rcvar` +start_precmd="ppp_precmd" +start_postcmd="ppp_postcmd" -ppp_start() +ppp_precmd() { # Establish ppp mode. # @@ -24,21 +24,21 @@ ppp_start() ppp_mode="auto" fi - ppp_command="/usr/sbin/ppp -quiet -${ppp_mode}" + rc_flags="$rc_flags -quiet -${ppp_mode}" # Switch on NAT mode? # case ${ppp_nat} in [Yy][Ee][Ss]) - ppp_command="${ppp_command} -nat" + rc_flags="$rc_flags -nat" ;; esac - ppp_command="${ppp_command} ${ppp_profile}" - - echo "Starting ppp as \"${ppp_user}\"" - su -m ${ppp_user} -c "exec ${ppp_command}" + rc_flags="$rc_flags ${ppp_profile}" +} +ppp_postcmd() +{ # Re-Sync ipfilter so it picks up any new network interfaces # /etc/rc.d/ipfilter resync diff --git a/etc/rc.d/ppp-user b/etc/rc.d/ppp-user index 305ee1cc50ac..f13175cd1b1a 100644 --- a/etc/rc.d/ppp-user +++ b/etc/rc.d/ppp-user @@ -10,11 +10,11 @@ . /etc/rc.subr name="ppp" -rcvar="ppp_enable" -start_cmd="ppp_start" -stop_cmd=":" +rcvar=`set_rcvar` +start_precmd="ppp_precmd" +start_postcmd="ppp_postcmd" -ppp_start() +ppp_precmd() { # Establish ppp mode. # @@ -24,21 +24,21 @@ ppp_start() ppp_mode="auto" fi - ppp_command="/usr/sbin/ppp -quiet -${ppp_mode}" + rc_flags="$rc_flags -quiet -${ppp_mode}" # Switch on NAT mode? # case ${ppp_nat} in [Yy][Ee][Ss]) - ppp_command="${ppp_command} -nat" + rc_flags="$rc_flags -nat" ;; esac - ppp_command="${ppp_command} ${ppp_profile}" - - echo "Starting ppp as \"${ppp_user}\"" - su -m ${ppp_user} -c "exec ${ppp_command}" + rc_flags="$rc_flags ${ppp_profile}" +} +ppp_postcmd() +{ # Re-Sync ipfilter so it picks up any new network interfaces # /etc/rc.d/ipfilter resync