aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2007-07-22 16:55:31 +0000
committerFelix Fietkau <nbd@openwrt.org>2007-07-22 16:55:31 +0000
commit6330c58b584a0a5948e2403d27e2a2728386941f (patch)
tree974b318fac302f3ab660fa3e7bedd6f6e52a2a6a
parent2a43eb3bd9c69392cc28fb94b05a8beffb9567c5 (diff)
downloadupstream-6330c58b584a0a5948e2403d27e2a2728386941f.tar.gz
upstream-6330c58b584a0a5948e2403d27e2a2728386941f.tar.bz2
upstream-6330c58b584a0a5948e2403d27e2a2728386941f.zip
add patch from #2111
SVN-Revision: 8106
-rwxr-xr-xpackage/base-files/files/etc/functions.sh6
-rwxr-xr-xpackage/base-files/files/etc/rc.common24
2 files changed, 17 insertions, 13 deletions
diff --git a/package/base-files/files/etc/functions.sh b/package/base-files/files/etc/functions.sh
index 4446931d59..a613e1190b 100755
--- a/package/base-files/files/etc/functions.sh
+++ b/package/base-files/files/etc/functions.sh
@@ -146,14 +146,16 @@ config_set() {
config_foreach() {
local function="$1"
- local type="$2"
+ [ "$#" -ge 1 ] && shift
+ local type="$1"
+ [ "$#" -ge 1 ] && shift
local section cfgtype
[ -z "$CONFIG_SECTIONS" ] && return 0
for section in ${CONFIG_SECTIONS}; do
config_get cfgtype "$section" TYPE
[ -n "$type" -a "x$cfgtype" != "x$type" ] && continue
- eval "$function \"\$section\""
+ eval "$function \"\$section\" \"\$@\""
done
}
diff --git a/package/base-files/files/etc/rc.common b/package/base-files/files/etc/rc.common
index 4ffc79890a..99e2a5db62 100755
--- a/package/base-files/files/etc/rc.common
+++ b/package/base-files/files/etc/rc.common
@@ -67,24 +67,26 @@ EOF
}
initscript="$1"
-action="$2"
+[ "$#" -ge 1 ] && shift
+action="$1"
+[ "$#" -ge 1 ] && shift
. "$initscript"
cmds=
for cmd in $EXTRA_COMMANDS; do
- cmds="${cmds:+$cmds$N}$cmd) $cmd;;"
+ cmds="${cmds:+$cmds$N}$cmd) $cmd \"\$@\";;"
done
eval "case \"\$action\" in
- start) start;;
- stop) stop;;
- reload) reload || restart;;
- restart) restart;;
- boot) boot;;
- shutdown) shutdown;;
- enable) enable;;
- enabled) enabled;;
- disable) disable;;
+ start) start \"\$@\";;
+ stop) stop \"\$@\";;
+ reload) reload \"\$@\" || restart \"\$@\";;
+ restart) restart \"\$@\";;
+ boot) boot \"\$@\";;
+ shutdown) shutdown \"\$@\";;
+ enable) enable \"\$@\";;
+ enabled) enabled \"\$@\";;
+ disable) disable \"\$@\";;
$cmds
*) help;;
esac"