[source] base-files: use restart if no reload hook for service

LEDE Commits lede-commits at lists.infradead.org
Wed Apr 12 00:55:08 PDT 2017


nbd pushed a commit to source.git, branch master:
https://git.lede-project.org/6713694fe4377f0988e2d558a6cd9b05ca9b18f1

commit 6713694fe4377f0988e2d558a6cd9b05ca9b18f1
Author: Alexandru Ardelean <ardeleanalex at gmail.com>
AuthorDate: Fri Mar 31 09:44:19 2017 +0300

    base-files: use restart if no reload hook for service
    
    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 "$@"



More information about the lede-commits mailing list