[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#661591: packages providing ifupdown scripts must have those scripts fixed if needed



Hi Andrew,

On Tue, Feb 28, 2012 at 11:24:43AM +0100, Andrew O. Shadura wrote:
> Starting with the last beta, ifupdown calls run-parts for if-*.d scripts
> with --exit-on-error, so if the script fails, interface isn't marked as
> configured (see #547587).

> However, it's been reported that some scripts return wrong exit codes
> sometimes, causing failure during network configuration.

My doubt here is: what is the definition of a *right* exit code now, from
ifupdown's POV?  When is it appropriate for a hook which has failed to exit
non-zero?

This is a pretty significant change in behavior from the perspective of the
packages providing hooks, as it means that they now have to avoid giving
meaningful exit codes in order to not cause ifupdown to fail to run
subsequent hooks.  OTOH, there might be cases where that's beneficial
because it lets a critical hook declare that an interface bring-up hasn't
succeeded and the interface bring-up should be rolled back so the admin can
try again.  But how do we define "critical" hooks?

I would appreciate seeing some more guidance here for hook maintainers.  As
you may be aware, Ubuntu is using ifupdown 0.7beta2 for its next release,
and has had to revert this particular behavior change because it made
networking significantly more brittle.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org

Attachment: signature.asc
Description: Digital signature


Reply to: