| Summary: | killproc() should return an error status if finds nothing to kill | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | imz <vanyaz> |
| Component: | initscripts | Assignee: | Dmitry V. Levin <ldv> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P5 | ||
| Version: | unstable | ||
| Hardware: | all | ||
| OS: | Linux | ||
Addition: message refined (not to log a reload failure as a shutdown failure):
--- /etc/init.d/functions.orig 2003-03-23 01:51:54 +0300
+++ /etc/init.d/functions 2003-03-24 00:06:37 +0300
@@ -238,7 +238,12 @@
fi
fi
else
- failure \"$base shutdown\"
+ if [ \"$notset\" = \"1\" ]; then
+ failure \"$base shutdown\"
+ else
+ failure \"$base $killlevel\"
+ fi
+ RC=1
fi
# Remove pid file if any.
Addition: message refined (not to log a reload failure as a shutdown failure):
--- /etc/init.d/functions.orig 2003-03-23 01:51:54 +0300
+++ /etc/init.d/functions 2003-03-24 00:06:37 +0300
@@ -238,7 +238,12 @@
fi
fi
else
- failure \"$base shutdown\"
+ if [ \"$notset\" = \"1\" ]; then
+ failure \"$base shutdown\"
+ else
+ failure \"$base $killlevel\"
+ fi
+ RC=1
fi
# Remove pid file if any.
Thanks, fixed in 5.49-ipl54mdk Thanks, fixed in 5.49-ipl54mdk |
(imho.) In /etc/init.d/functions, killproc() displays a failure when no matching processes are found, but the returned error code is 0 in this case. This makes further diagnostic more difficult. --- # service bind stop Shutting down named: [ OK ] # service bind reload; echo $? [FAILED]0 After the suggested patch: # service bind reload; echo $? [FAILED]1 --- This is a possible patch: --- /etc/init.d/functions.orig 2003-03-23 01:51:54 +0300 +++ /etc/init.d/functions 2003-03-23 21:11:56 +0300 @@ -239,6 +239,7 @@ fi else failure \"$base shutdown\" + RC=1 fi # Remove pid file if any.