[LEDE-DEV] [PATCH] base-files: use restart if no reload hook for service
Alexandru Ardelean
ardeleanalex at gmail.com
Thu Mar 30 23:44:19 PDT 2017
This was also working before, with a slightly
different semantic.
[ Original semantic ]
If no reload hooks was implemented, the default one would
kick in, it would return fail, and restart would happen.
This would happen also in the case where a reload hook
would be implemented, it would fail, and it would restart
the service.
[ New semantic ]
The default reload hook calls restart.
Services can implement their own reload.
If reload fails, then the '/etc/init.d/<service> reload'
would return a non-zero code, and the caller can choose
a way to handle this.
Signed-off-by: Alexandru Ardelean <ardeleanalex at gmail.com>
---
package/base-files/files/etc/rc.common | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/package/base-files/files/etc/rc.common b/package/base-files/files/etc/rc.common
index 95cf956..af7bed4 100755
--- a/package/base-files/files/etc/rc.common
+++ b/package/base-files/files/etc/rc.common
@@ -17,7 +17,7 @@ stop() {
}
reload() {
- return 1
+ restart
}
restart() {
@@ -68,7 +68,7 @@ Available commands:
start Start the service
stop Stop the service
restart Restart the service
- reload Reload configuration files (or restart if that fails)
+ reload Reload configuration files (or restart if service does not implement reload)
enable Enable service autostart
disable Disable service autostart
$EXTRA_HELP
@@ -130,7 +130,7 @@ ${INIT_TRACE:+set -x}
if eval "type reload_service" 2>/dev/null >/dev/null; then
reload_service "$@"
else
- start
+ restart
fi
}
@@ -141,5 +141,4 @@ ${INIT_TRACE:+set -x}
ALL_COMMANDS="start stop reload restart boot shutdown enable disable enabled depends ${EXTRA_COMMANDS}"
list_contains ALL_COMMANDS "$action" || action=help
-[ "$action" = "reload" ] && action='eval reload "$@" || restart "$@" && :'
$action "$@"
--
2.7.4
More information about the Lede-dev
mailing list