[Midnightbsd-cvs] src: etc/rc.d: Whack ppp-user...
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sat Jan 17 12:24:51 EST 2009
Log Message:
-----------
Whack ppp-user... merge and cleanup ppp
Modified Files:
--------------
src/etc/rc.d:
ppp (r1.2 -> r1.3)
Removed Files:
-------------
src/etc/rc.d:
ppp-user
-------------- next part --------------
--- etc/rc.d/ppp-user
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/sh
-#
-# $FreeBSD: src/etc/rc.d/ppp-user,v 1.7 2004/12/15 12:39:28 brian Exp $
-# $MidnightBSD: src/etc/rc.d/ppp-user,v 1.2 2006/08/28 02:47:46 laffer1 Exp $
-
-# PROVIDE: ppp-user
-# REQUIRE: netif isdnd
-# KEYWORD: nojail
-
-. /etc/rc.subr
-
-name="ppp"
-rcvar=`set_rcvar`
-start_precmd="ppp_precmd"
-start_postcmd="ppp_postcmd"
-
-ppp_precmd()
-{
- # Establish ppp mode.
- #
- if [ "${ppp_mode}" != "ddial" -a "${ppp_mode}" != "direct" \
- -a "${ppp_mode}" != "dedicated" \
- -a "${ppp_mode}" != "background" ]; then
- ppp_mode="auto"
- fi
-
- rc_flags="$rc_flags -quiet -${ppp_mode}"
-
- # Switch on NAT mode?
- #
- case ${ppp_nat} in
- [Yy][Ee][Ss])
- rc_flags="$rc_flags -nat"
- ;;
- esac
-
- rc_flags="$rc_flags ${ppp_profile}"
-}
-
-ppp_postcmd()
-{
- # Re-Sync ipfilter so it picks up any new network interfaces
- #
- /etc/rc.d/ipfilter resync
-}
-
-load_rc_config $name
-run_rc_command "$1"
Index: ppp
===================================================================
RCS file: /home/cvs/src/etc/rc.d/ppp,v
retrieving revision 1.2
retrieving revision 1.3
diff -L etc/rc.d/ppp -L etc/rc.d/ppp -u -r1.2 -r1.3
--- etc/rc.d/ppp
+++ etc/rc.d/ppp
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# $FreeBSD: src/etc/rc.d/ppp,v 1.11.2.1 2006/01/21 22:42:43 yar Exp $
+# $FreeBSD: src/etc/rc.d/ppp,v 1.13.2.1 2007/10/31 16:42:41 emax Exp $
# $MidnightBSD$
# PROVIDE: ppp
@@ -12,38 +12,106 @@
name="ppp"
rcvar=`set_rcvar`
command="/usr/sbin/${name}"
-start_precmd="ppp_precmd"
-start_postcmd="ppp_postcmd"
+start_cmd="ppp_start"
+stop_cmd="ppp_stop"
+start_postcmd="ppp_poststart"
-ppp_precmd()
+ppp_start_profile()
{
+ local _ppp_profile _ppp_mode _ppp_nat
+
+ _ppp_profile=$1
+
+ # Check for ppp profile mode override.
+ #
+ eval _ppp_mode=\$ppp_${_ppp_profile}_mode
+ if [ -z "$_ppp_mode" ]; then
+ _ppp_mode=$ppp_mode
+ fi
+
+ # Check for ppp profile nat override.
+ #
+ eval _ppp_nat=\$ppp_${_ppp_profile}_nat
+ if [ -z "$_ppp_nat" ]; then
+ _ppp_nat=$ppp_nat
+ fi
+
# Establish ppp mode.
#
- if [ "${ppp_mode}" != "ddial" -a "${ppp_mode}" != "direct" \
- -a "${ppp_mode}" != "dedicated" \
- -a "${ppp_mode}" != "background" ]; then
- ppp_mode="auto"
+ if [ "${_ppp_mode}" != "ddial" -a "${_ppp_mode}" != "direct" \
+ -a "${_ppp_mode}" != "dedicated" \
+ -a "${_ppp_mode}" != "background" ]; then
+ _ppp_mode="auto"
fi
- rc_flags="$rc_flags -quiet -${ppp_mode}"
+ rc_flags="-quiet -${_ppp_mode}"
# Switch on NAT mode?
#
- case ${ppp_nat} in
+ case ${_ppp_nat} in
[Yy][Ee][Ss])
rc_flags="$rc_flags -nat"
;;
esac
- rc_flags="$rc_flags ${ppp_profile}"
+ # Run!
+ #
+ su -m $ppp_user -c "$command ${rc_flags} ${_ppp_profile}"
+}
+
+ppp_start()
+{
+ local _ppp_profile _p
+
+ _ppp_profile=$*
+ if [ -z "${_ppp_profile}" ]; then
+ _ppp_profile=$ppp_profile
+ fi
+
+ echo -n "Starting PPP profile:"
+
+ for _p in $_ppp_profile; do
+ echo -n " $_p"
+ ppp_start_profile $_p
+ done
+
+ echo "."
}
-ppp_postcmd()
+ppp_poststart()
{
- # Re-Sync ipfilter so it picks up any new network interfaces
+ # Re-Sync ipfilter and pf so they pick up any new network interfaces
#
/etc/rc.d/ipfilter resync
+ /etc/rc.d/pf resync
+}
+
+ppp_stop_profile() {
+ local _ppp_profile
+
+ _ppp_profile=$1
+
+ /bin/pkill -f "^${command}.*[[:space:]]${_ppp_profile}\$" || \
+ echo -n "(not running)"
+}
+
+ppp_stop() {
+ local _ppp_profile _p
+
+ _ppp_profile=$*
+ if [ -z "${_ppp_profile}" ]; then
+ _ppp_profile=$ppp_profile
+ fi
+
+ echo -n "Stopping PPP profile:"
+
+ for _p in $_ppp_profile; do
+ echo -n " $_p"
+ ppp_stop_profile $_p
+ done
+
+ echo "."
}
load_rc_config $name
-run_rc_command "$1"
+run_rc_command $*
More information about the Midnightbsd-cvs
mailing list