X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/38a2e4b392ba32048ba7da823a18150910792044..b7d3d9d3cef2286b7266dc447265a0a21565b9b9:/package/base-files/files/etc/init.d/rcS diff --git a/package/base-files/files/etc/init.d/rcS b/package/base-files/files/etc/init.d/rcS index 61c1d6dab..3b8043209 100755 --- a/package/base-files/files/etc/init.d/rcS +++ b/package/base-files/files/etc/init.d/rcS @@ -1,8 +1,26 @@ #!/bin/sh # Copyright (C) 2006 OpenWrt.org -{ +run_scripts() { for i in /etc/rc.d/$1*; do - $i $2 2>&1 - done -} | logger -s -p 6 -t '' & + [ -x $i ] && $i $2 2>&1 + done | $LOGGER +} + +system_config() { + config_get_bool foreground $1 foreground 0 +} + +LOGGER="cat" +[ -x /usr/bin/logger ] && LOGGER="logger -s -p 6 -t sysinit" + +. /etc/functions.sh + +config_load system +config_foreach system_config system + +if [ "$1" = "S" -a "$foreground" != "1" ]; then + run_scripts "$1" "$2" & +else + run_scripts "$1" "$2" +fi