hopefully fix duplicate ppp instances (#895)
[openwrt.git] / package / base-files / default / etc / rc.common
index 6676278..7180b0f 100755 (executable)
@@ -1,5 +1,9 @@
 #!/bin/sh
-. /etc/functions.sh
+# Copyright (C) 2006 OpenWrt.org
+
+. $IPKG_INSTROOT/etc/functions.sh
+
+START=50
 
 start() {
        return 0
@@ -27,12 +31,14 @@ shutdown() {
 }
 
 disable() {
-       rm -f /etc/rc.d/${initscript##*/}
+       name="$(basename "${initscript}")"
+       rm -f "$IPKG_INSTROOT"/etc/rc.d/S??$name
 }
 
 enable() {
+       name="$(basename "${initscript}")"
        disable
-       ln -s /etc/init.d/${initscript##*/} /etc/rc.d/${initscript##*/}
+       ln -s "/etc/init.d/$name" "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}"
 }
 
 depends() {
@@ -48,8 +54,8 @@ Available commands:
        stop    Stop the service
        restart Restart the service
        reload  Reload configuration files (or restart if that fails)
-       enable  Enable the service (load at boot time)
-       disable Disable the service
+       enable  Enable service autostart
+       disable Disable service autostart
 $EXTRA_HELP
 EOF
 }
@@ -61,17 +67,17 @@ action="$2"
 
 cmds=
 for cmd in $EXTRA_COMMANDS; do
-       cmds="$cmd) $cmd;;"
+       cmds="${cmds:+$cmds$N}$cmd) $cmd;;"
 done
 eval "case \"\$action\" in
        start) start;;
        stop) stop;;
        reload) reload || restart;;
        restart) restart;;
-       enable) enable;;
-       disable) disable;;
        boot) boot;;
        shutdown) shutdown;;
+       enable) enable;;
+       disable) disable;;
        $cmds
        *) help;;
 esac"
This page took 0.026163 seconds and 4 git commands to generate.