LSB init scripts and NETWORKING=no && exit 0

Ville Skyttä ville.skytta at iki.fi
Sun Jul 8 20:15:55 UTC 2007


On Sunday 08 July 2007, Steven Pritchard wrote:
> On Sun, Jul 08, 2007 at 05:04:08PM +0300, Ville Skyttä wrote:
> > Actually, all of 1) silent exit and 2) the zero exit value and 3) the way
> > "is networking up?" is checked seem questionable to me.  Anyone have
> > ideas for better approaches to this?
>
> Isn't that just supposed to be checking if networking is enabled at
> all?  If that is "no", presumably we don't even have the loopback
> interface up.

Hard to tell, but that's just one bit of the puzzle.  To elaborate on the 
issues:

a) Why doesn't it output an error message saying that the service requires 
networking but networking doesn't seem to be available?

b) Why is the exit status 0, indicating success?

c) Why is the check done before doing anything else instead of being done eg. 
only in the start (and restart, reload and friends if they're not implemented 
using start) action?  That and b) will result in eg. the status action 
returning 0, indicating in LSB terms "program is running or service is OK" 
which it most likely is not if it requires networking and networking isn't 
up.

d) Why does it just read something from a config file instead of actually 
checking whether networking is up?  Not sure if that check is necessary in 
the first place - could just let the service fail.  Maybe it's used/useful 
for optimization purposes and/or to provide a hook for a more descriptive 
error message than what the failing service would output.




More information about the fedora-devel-list mailing list