]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
network: merge setup_net_$netif.ok and net.$netif.did-setup
authorHarald Hoyer <harald@redhat.com>
Fri, 28 Feb 2014 09:36:12 +0000 (10:36 +0100)
committerHarald Hoyer <harald@redhat.com>
Fri, 28 Feb 2014 11:10:41 +0000 (12:10 +0100)
one marker per interface is enough

modules.d/40network/dhclient-script.sh
modules.d/40network/ifup.sh
modules.d/40network/net-genrules.sh
modules.d/40network/net-lib.sh
modules.d/45ifcfg/write-ifcfg.sh

index 8af48f7f31b8ef4cf4b823310b192ca34d164f17..5124f0b7b640c38eb5737c1a3e9864abc7c0582b 100755 (executable)
@@ -116,12 +116,10 @@ case $reason in
             echo "setup_net $netif"
             echo "source_hook initqueue/online $netif"
             [ -e /tmp/net.$netif.manualup ] || echo "/sbin/netroot $netif"
-            echo "> /tmp/setup_net_$netif.ok"
-            echo "> /tmp/setup_net_\$(cat /sys/class/net/$netif/address).ok"
             echo "rm -f -- $hookdir/initqueue/setup_net_$netif.sh"
         } > $hookdir/initqueue/setup_net_$netif.sh
 
-        echo "[ -f /tmp/setup_net_$netif.ok ]" > $hookdir/initqueue/finished/dhclient-$netif.sh
+        echo "[ -f /tmp/net.$netif.did-setup ]" > $hookdir/initqueue/finished/dhclient-$netif.sh
         >/tmp/net.$netif.up
         ;;
 
@@ -139,12 +137,10 @@ case $reason in
             echo "setup_net $netif"
             echo "source_hook initqueue/online $netif"
             [ -e /tmp/net.$netif.manualup ] || echo "/sbin/netroot $netif"
-            echo "> /tmp/setup_net_$netif.ok"
-            echo "> /tmp/setup_net_\$(cat /sys/class/net/$netif/address).ok"
             echo "rm -f -- $hookdir/initqueue/setup_net_$netif.sh"
         } > $hookdir/initqueue/setup_net_$netif.sh
 
-        echo "[ -f /tmp/setup_net_$netif.ok ]" > $hookdir/initqueue/finished/dhclient-$netif.sh
+        echo "[ -f /tmp/net.$netif.did-setup ]" > $hookdir/initqueue/finished/dhclient-$netif.sh
         >/tmp/net.$netif.up
         ;;
     *) echo "dhcp: $reason";;
index e439106890a821d71178be2b83167f3bf3cc24c5..02dfc947b3295b1085afb43bd2f2414673cbfc9b 100755 (executable)
@@ -83,7 +83,9 @@ fi
 if [ -n "$manualup" ]; then
     >/tmp/net.$netif.manualup
 else
-    [ -f /tmp/net.${iface}.did-setup ] && exit 0
+    [ -e /tmp/net.${netif}.did-setup ] && exit 0
+    [ -e /sys/class/net/$netif/address ] && \
+        [ -e /tmp/net.$(cat /sys/class/net/$netif/address).did-setup ] && exit 0
 fi
 
 # Run dhclient
@@ -145,7 +147,6 @@ do_static() {
     [ -n "$gw" ] && echo ip route add default via $gw dev $netif > /tmp/net.$netif.gw
     [ -n "$hostname" ] && echo "echo $hostname > /proc/sys/kernel/hostname" > /tmp/net.$netif.hostname
 
-    > /tmp/setup_net_${netif}.ok
     return 0
 }
 
@@ -334,6 +335,8 @@ for p in $(getargs ip=); do
             do_static ;;
     esac
 
+    > /tmp/net.${netif}.up
+
     case $autoconf in
         dhcp|on|any|dhcp6)
             ;;
@@ -359,7 +362,7 @@ if [ -n "$DO_BOND_SETUP" -o -n "$DO_TEAM_SETUP" -o -n "$DO_VLAN_SETUP" ]; then
 fi
 
 # no ip option directed at our interface?
-if [ ! -e /tmp/setup_net_${netif}.ok ]; then
+if [ ! -e /tmp/net.${netif}.up ]; then
     do_dhcp -4
 fi
 
index c4def61b285032614904ab10f7f0c74623b1dd1e..af2f09c173a1aaa85494efe43de13026377669c2 100755 (executable)
@@ -89,7 +89,7 @@ command -v fix_bootif >/dev/null || . /lib/net-lib.sh
 
         for iface in $wait_ifaces; do
             if [ "$bootdev" = "$iface" ] || [ "$NEEDNET" = "1" ]; then
-                echo "[ -f /tmp/setup_net_${iface}.ok ]" >$hookdir/initqueue/finished/wait-$iface.sh
+                echo "[ -f /tmp/net.${iface}.did-setup ]" >$hookdir/initqueue/finished/wait-$iface.sh
             fi
         done
     # Default: We don't know the interface to use, handle all
index a5867118ccd3dc4e7b96ac5e31a0eb9a6faa4b47..7430e4ce1857fd91f862eca26af038b66cdf71ac 100755 (executable)
@@ -82,12 +82,16 @@ ifdown() {
     ip addr flush dev $netif
     echo "#empty" > /etc/resolv.conf
     rm -f -- /tmp/net.$netif.did-setup
+    [ -e /sys/class/net/$netif/address ] && \
+        rm -f -- /tmp/net.$(cat /sys/class/net/$netif/address).did-setup
     # TODO: send "offline" uevent?
 }
 
 setup_net() {
     local netif="$1" f="" gw_ip="" netroot_ip="" iface="" IFACES=""
     [ -e /tmp/net.$netif.did-setup ] && return
+    [ -e /sys/class/net/$netif/address ] && \
+        [ -e /tmp/net.$(cat /sys/class/net/$netif/address).did-setup ] && return
     [ -e "/tmp/net.ifaces" ] && read IFACES < /tmp/net.ifaces
     [ -z "$IFACES" ] && IFACES="$netif"
     # run the scripts written by ifup
@@ -129,6 +133,8 @@ setup_net() {
     unset layer2
 
     > /tmp/net.$netif.did-setup
+    [ -e /sys/class/net/$netif/address ] && \
+        > /tmp/net.$(cat /sys/class/net/$netif/address).did-setup
 }
 
 save_netinfo() {
index d9e9f3af72d503047e29d561c2167e3c79127e21..e2fa48505365ec6a8f433126d8e6d8675e174148 100755 (executable)
@@ -85,6 +85,7 @@ for netup in /tmp/net.*.did-setup ; do
 
     netif=${netup%%.did-setup}
     netif=${netif##*/net.}
+    strstr "$netif" ":*:*:*:*:" && continue
     [ -e /tmp/ifcfg/ifcfg-$netif ] && continue
     unset bridge
     unset bond
@@ -111,7 +112,8 @@ for netup in /tmp/net.*.did-setup ; do
     if [ "$netif" = "$vlanname" ]; then
         vlan=yes
     fi
-    cat /sys/class/net/$netif/address > /tmp/net.$netif.hwaddr
+    [ -e /sys/class/net/$netif/address ] && \
+        cat /sys/class/net/$netif/address > /tmp/net.$netif.hwaddr
     {
         echo "# Generated by dracut initrd"
         echo "DEVICE=\"$netif\""