retitle 826000 ifupdown: clarify that if-*.d scripts are run once extra with 
"IFACE=--all" when doing ifup -a
severity 826000 minor
thanks

On Wed, Jun 01, 2016 at 11:20:11PM +0200, Vincent Lefevre wrote:

> > > This means that various ifup scripts are probably buggy.
> > 
> > What makes you think that?
> 
> Various scripts (like mine) have:
> 
> [ "$IFACE" != "lo" ] || exit 0
> 
> without testing "$IFACE" != "--all" or testing $ADDRFAM = "meta".
> 
> An example is avahi-autoipd, which has:
> 
> [ "$IFACE" != "lo" ] || exit 0
> 
> then later:
> 
>         /bin/ip route add 169.254.0.0/16 dev $IFACE metric 1000 scope link

You're skipping over the check for METHOD, which is set to "none" when
IFACE is "--all":

case "$METHOD" in
        static|dhcp|NetworkManager) ;;
        *) exit 0 ;;
esac

But if I have some time I'll go through other package's scripts and see
if any of them are missing some checks. But in any case, this is not a
bug in ifupdown.

> > > Also, why doesn't ifup write a log message about --all?
> > 
> > So far there was no reason for it.
> 
> It would be better to know what's going on. There's a log message
> for real interfaces. For the same reason, one could expect one for
> --all.
> 
> Moreover, the interfaces(5) man page says:
> 
>        IFACE  physical name of the interface being processed
> 
> This is obviously wrong when IFACE is set to "--all".

The text about IFACE being set to "--all" is two paragraphs down. But
I'll clarify the manpage in the next release, and see about adding a log
message when the scripts for --all are being run.

-- 
Met vriendelijke groet / with kind regards,
      Guus Sliepen <g...@debian.org>

Attachment: signature.asc
Description: Digital signature

Reply via email to