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 <[email protected]>
signature.asc
Description: Digital signature

