diff options
| author | Jonas Gorski <jonas.gorski@bisdn.de> | 2023-09-14 17:04:16 +0200 | 
|---|---|---|
| committer | Jonas Gorski <jonas.gorski@bisdn.de> | 2023-09-14 17:20:25 +0200 | 
| commit | 312d5ee1592f8c5b616d330233d1de2643f759e2 (patch) | |
| tree | 3b55832391e2f63548191e6cd41689ce4577ea93 /tools | |
| parent | 75dbd45c5570c088dc0e2cf83e1b22b0ec0a30b3 (diff) | |
tools: make --quiet actually suppress output
When calling daemon_stop() with --quiet and e.g. the pidfile is empty,
it won't return early since while "$fail" is set, "$2" is "--quiet", so
the if condition isn't met and it will continue executing, resulting
in error messages in the log:
> Sep 14 14:48:33 localhost watchfrr[2085]: [YFT0P-5Q5YX] Forked background command [pid 2086]: /usr/lib/frr/watchfrr.sh restart all
> Sep 14 14:48:33 localhost frrinit.sh[2075]: /usr/lib/frr/frrcommon.sh: line 216: kill: `': not a pid or valid job spec
> Sep 14 14:48:33 localhost frrinit.sh[2075]: /usr/lib/frr/frrcommon.sh: line 216: kill: `': not a pid or valid job spec
> Sep 14 14:48:33 localhost frrinit.sh[2075]: /usr/lib/frr/frrcommon.sh: line 216: kill: `': not a pid or valid job spec
Fix this by moving the --quiet check into the block to log_failure_msg(),
and also add the check to all other invocations of log_*_msg() to make
--quiet properly suppress output.
Fixes: 19a99d89f088 ("tools: suppress unuseful warnings during restarting frr")
Signed-off-by: Jonas Gorski <jonas.gorski@bisdn.de>
Diffstat (limited to 'tools')
| -rwxr-xr-x | tools/frrcommon.sh.in | 8 | 
1 files changed, 4 insertions, 4 deletions
diff --git a/tools/frrcommon.sh.in b/tools/frrcommon.sh.in index f1f7011909..00b63a78e2 100755 --- a/tools/frrcommon.sh.in +++ b/tools/frrcommon.sh.in @@ -207,8 +207,8 @@ daemon_stop() {  	[ -z "$fail" -a -z "$pid" ] && fail="pid file is empty"  	[ -n "$fail" ] || kill -0 "$pid" 2>/dev/null || fail="pid $pid not running" -	if [ -n "$fail" ] && [ "$2" != "--quiet" ]; then -		log_failure_msg "Cannot stop $dmninst: $fail" +	if [ -n "$fail" ]; then +		[ "$2" = "--quiet" ] || log_failure_msg "Cannot stop $dmninst: $fail"  		return 1  	fi @@ -220,11 +220,11 @@ daemon_stop() {  		[ $(( cnt -= 1 )) -gt 0 ] || break  	done  	if kill -0 "$pid" 2>/dev/null; then -		log_failure_msg "Failed to stop $dmninst, pid $pid still running" +		[ "$2" = "--quiet" ] || log_failure_msg "Failed to stop $dmninst, pid $pid still running"  		still_running=1  		return 1  	else -		log_success_msg "Stopped $dmninst" +		[ "$2" = "--quiet" ] || log_success_msg "Stopped $dmninst"  		rm -f "$pidfile"  		return 0  	fi  | 
