summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbrooks <brooks@FreeBSD.org>2008-03-26 21:54:48 +0000
committerbrooks <brooks@FreeBSD.org>2008-03-26 21:54:48 +0000
commitdafcba3dbfc471eed7465489fa4d60bcecf47eb6 (patch)
tree402d02a5a05412d0bb800537d148fad7f271c218
parent3cbe36127b9fdf1720c93eecf128486487a56c44 (diff)
downloadFreeBSD-src-dafcba3dbfc471eed7465489fa4d60bcecf47eb6.zip
FreeBSD-src-dafcba3dbfc471eed7465489fa4d60bcecf47eb6.tar.gz
Allow the characters .-+/ to appear in ppp profile names by folding them
to _ when evaluating ppp_<profile>_nat and ppp_<profile>_mode. Document the per-profile variables. PR: conf/121452, conf/122127 (partial) MFC after: 1 week
-rw-r--r--etc/rc.d/ppp9
-rw-r--r--share/man/man5/rc.conf.527
2 files changed, 31 insertions, 5 deletions
diff --git a/etc/rc.d/ppp b/etc/rc.d/ppp
index 01fc2b1..7d0f9ba 100644
--- a/etc/rc.d/ppp
+++ b/etc/rc.d/ppp
@@ -21,17 +21,22 @@ ppp_start_profile()
local _ppp_profile _ppp_mode _ppp_nat
_ppp_profile=$1
+ _ppp_profile_cleaned=$1
+ _punct=". - / +"
+ for _punct_c in $_punct; do
+ _ppp_profile_cleaned=`ltr ${_ppp_profile_cleaned} ${_punct_c} '_'`
+ done
# Check for ppp profile mode override.
#
- eval _ppp_mode=\$ppp_${_ppp_profile}_mode
+ eval _ppp_mode=\$ppp_${_ppp_profile_cleaned}_mode
if [ -z "$_ppp_mode" ]; then
_ppp_mode=$ppp_mode
fi
# Check for ppp profile nat override.
#
- eval _ppp_nat=\$ppp_${_ppp_profile}_nat
+ eval _ppp_nat=\$ppp_${_ppp_profile_cleaned}_nat
if [ -z "$_ppp_nat" ]; then
_ppp_nat=$ppp_nat
fi
diff --git a/share/man/man5/rc.conf.5 b/share/man/man5/rc.conf.5
index 3c7b67a..b6cd48d 100644
--- a/share/man/man5/rc.conf.5
+++ b/share/man/man5/rc.conf.5
@@ -1315,11 +1315,30 @@ If set to
run the
.Xr ppp 8
daemon.
+.It Va ppp_profile
+.Pq Vt str
+The name of the profile to use from
+.Pa /etc/ppp/ppp.conf .
+Also used for per-profile overrides of
+.Va ppp_mode
+and
+.Va ppp_nat .
+When the profile name contains any of the characters
+.Dq Li .-/+
+they are translated to
+.Dq Li _
+for the proposes of the override variable names.
.It Va ppp_mode
.Pq Vt str
Mode in which to run the
.Xr ppp 8
daemon.
+.It Va ppp_ Ns Ao Ar profile Ac Ns _mode
+.Pq Vt str
+Overrides the global
+.Va ppp_mode
+for
+.Ar profile .
Accepted modes are
.Dq Li auto ,
.Dq Li ddial ,
@@ -1336,10 +1355,12 @@ Used in conjunction with
.Va gateway_enable
allows hosts on private network addresses access to the Internet using
this host as a network address translating router.
-.It Va ppp_profile
+.It Va ppp_ Ns Ao Ar profile Ac Ns _nat
.Pq Vt str
-The name of the profile to use from
-.Pa /etc/ppp/ppp.conf .
+Overrides the global
+.Va ppp_nat
+for
+.Ar profile .
.It Va ppp_user
.Pq Vt str
The name of the user under which
OpenPOWER on IntegriCloud