network: don't use "ifup -m"

"ifup -m" was thought to be used by humans in the emergency shell.
Using it programatically shows some other flaw in the execution logic.

Also, "ifup -m" was configuring the interface multiple times on "add"
and "change" uevent, because the "$netif.did-setup" test was not
executed.
master
Harald Hoyer 2015-07-02 11:32:08 +02:00
parent 0f89ec314b
commit 7cca5efdce
2 changed files with 2 additions and 2 deletions

View File

@ -77,9 +77,10 @@ fi
# disable manual ifup while netroot is set for simplifying our logic # disable manual ifup while netroot is set for simplifying our logic
# in netroot case we prefer netroot to bringup $netif automaticlly # in netroot case we prefer netroot to bringup $netif automaticlly
[ -n "$2" -a "$2" = "-m" ] && [ -z "$netroot" ] && manualup="$2" [ -n "$2" -a "$2" = "-m" ] && [ -z "$netroot" ] && manualup="$2"
[ -z "$netroot" ] && [ -z "$manualup" ] && exit 0
if [ -n "$manualup" ]; then if [ -n "$manualup" ]; then
>/tmp/net.$netif.manualup >/tmp/net.$netif.manualup
rm -f /tmp/net.${netif}.did-setup
else else
[ -e /tmp/net.${netif}.did-setup ] && exit 0 [ -e /tmp/net.${netif}.did-setup ] && exit 0
[ -e /sys/class/net/$netif/address ] && \ [ -e /sys/class/net/$netif/address ] && \

View File

@ -50,7 +50,6 @@ command -v fix_bootif >/dev/null || . /lib/net-lib.sh
fi fi


ifup='/sbin/ifup $env{INTERFACE}' ifup='/sbin/ifup $env{INTERFACE}'
[ -z "$netroot" ] && ifup="$ifup -m"


runcmd="RUN+=\"/sbin/initqueue --name ifup-\$env{INTERFACE} --unique --onetime $ifup\"" runcmd="RUN+=\"/sbin/initqueue --name ifup-\$env{INTERFACE} --unique --onetime $ifup\""