diff options
-rwxr-xr-x | rc.d/init.d/network | 29 | ||||
-rwxr-xr-x | sysconfig/network-scripts/ifup-eth | 4 |
2 files changed, 8 insertions, 25 deletions
diff --git a/rc.d/init.d/network b/rc.d/init.d/network index 943b7798..cf0fa00a 100755 --- a/rc.d/init.d/network +++ b/rc.d/init.d/network @@ -94,6 +94,7 @@ case "$1" in # bring up all other interfaces configured to come up at boot time for i in $interfaces; do + unset DEVICE TYPE SLAVE BRIDGE eval $(LANG=C fgrep "DEVICE=" ifcfg-$i) eval $(LANG=C fgrep "TYPE=" ifcfg-$i) eval $(LANG=C fgrep "SLAVE=" ifcfg-$i) @@ -103,34 +104,28 @@ case "$1" in if [ "${DEVICE##cipcb}" != "$DEVICE" ] ; then cipeinterfaces="$cipeinterfaces $i" - unset DEVICE TYPE SLAVE BRIDGE continue fi if [ "$TYPE" = "xDSL" ]; then xdslinterfaces="$xdslinterfaces $i" - unset DEVICE TYPE SLAVE BRIDGE continue fi if [ -n "$BRIDGE" ]; then is_available $i bridgeinterfaces="$bridgeinterfaces $i" - unset DEVICE TYPE SLAVE BRIDGE continue fi if [ "${DEVICE%%.*}" != "$DEVICE" ] ; then vlaninterfaces="$vlaninterfaces $i" - unset DEVICE TYPE SLAVE BRIDGE continue fi if [ "$SLAVE" = "yes" ]; then - unset DEVICE TYPE SLAVE BRIDGE continue fi - unset DEVICE TYPE SLAVE BRIDGE - + if LANG=C egrep -L "^ONBOOT=['\"]?[Nn][Oo]['\"]?" ifcfg-$i > /dev/null ; then # this loads the module, to preserve ordering is_available $i @@ -202,6 +197,7 @@ case "$1" in # get list of bonding, cipe, and xdsl interfaces for i in $interfaces; do + unset DEVICE TYPE BRIDGE eval $(LANG=C fgrep "DEVICE=" ifcfg-$i) eval $(LANG=C fgrep "TYPE=" ifcfg-$i) eval $(LANG=C fgrep "BRIDGE=" ifcfg-$i) @@ -210,47 +206,34 @@ case "$1" in if [ "${DEVICE##cipcb}" != "$DEVICE" ] ; then cipeinterfaces="$cipeinterfaces $i" - unset DEVICE TYPE BRIDGE continue fi if [ -n "$BRIDGE" ]; then bridgeinterfaces="$bridgeinterfaces $i" - unset DEVICE TYPE BRIDGE continue fi if [ "$TYPE" = "xDSL" ]; then xdslinterfaces="$xdslinterfaces $i" - unset DEVICE TYPE BRIDGE continue fi if [ "${DEVICE%%.*}" != "$DEVICE" ] ; then vlaninterfaces="$vlaninterfaces $i" - unset DEVICE TYPE SLAVE BRIDGE continue fi remaining="$remaining $i" - unset DEVICE TYPE BRIDGE done - for i in $cipeinterfaces $xdslinterfaces $bridgeinterfaces $vlaninterfaces; do - eval $(fgrep "DEVICE=" ifcfg-$i) + for i in $cipeinterfaces $xdslinterfaces $bridgeinterfaces $vlaninterfaces $remaining; do + (. ifcfg-$i if [ -z "$DEVICE" ] ; then DEVICE="$i"; fi if ! check_device_down $DEVICE; then action $"Shutting down interface $i: " ./ifdown $i boot fi + ) done - - # shut down all interfaces (other than loopback) - for i in $remaining ; do - eval $(fgrep "DEVICE=" ifcfg-$i) - if [ -z "$DEVICE" ] ; then DEVICE="$i"; fi - if ! check_device_down $DEVICE; then - action $"Shutting down interface $i: " ./ifdown $i boot - fi - done case "$IPX" in yes|true) if [ "$IPXINTERNALNETNUM" != "0" ]; then diff --git a/sysconfig/network-scripts/ifup-eth b/sysconfig/network-scripts/ifup-eth index d66ba5af..5a4a985e 100755 --- a/sysconfig/network-scripts/ifup-eth +++ b/sysconfig/network-scripts/ifup-eth @@ -265,9 +265,9 @@ if [ "${TYPE}" = "Bonding" ] || ethtool -i $DEVICE 2>/dev/null| grep -q "driver for device in `LANG=C grep -l "^[[:space:]]*MASTER=${DEVICE}" /etc/sysconfig/network-scripts/ifcfg-*` ; do if [ "$BOOTPROTO" = "dhcp" ]; then DEV=$DEVICE - eval $(LANG=C fgrep "DEVICE=" $device) + (. $device ifenslave -d $DEV $DEVICE - DEVICE=$DEV + ) fi /sbin/ifup ${device##*/} done |