From 61b0f20f2d57fc7481d10e25ff73fd076f97d9d3 Mon Sep 17 00:00:00 2001 From: Bill Nottingham Date: Wed, 2 Jan 2002 04:32:06 +0000 Subject: revert broken code. To set HW address, use MACADDR, not HWADDR. HWADDR is used to tie a configuration to a particular card, even if its device name changes. --- sysconfig/network-scripts/ifup | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'sysconfig/network-scripts/ifup') diff --git a/sysconfig/network-scripts/ifup b/sysconfig/network-scripts/ifup index 94b7caad..8b782ed4 100755 --- a/sysconfig/network-scripts/ifup +++ b/sysconfig/network-scripts/ifup @@ -92,8 +92,21 @@ is_available ${REALDEVICE} || { fi } if [ -n "${HWADDR}" ]; then - # set the appropriate eth number - /sbin/nameif ${REALDEVICE} ${HWADDR} + FOUNDMACADDR=`LC_ALL= LANG= ip -o link show ${REALDEVICE} | \ + sed 's/.*link\/ether \([[:alnum:]:]*\).*/\1/'` + if [ "${FOUNDMACADDR}" != "${HWADDR}" ]; then + NEWCONFIG=`fgrep -l "HWADDR=${HWADDR}" /etc/sysconfig/network-scripts/ifcfg-*` + if [ -n "${NEWCONFIG}" ]; then + exec /sbin/ifup ${NEWCONFIG} + fi + NEWCONFIG=`fgrep -l "HWADDR=${HWADDR}" /etc/sysconfig/networking/default/ifcfg-*` + if [ -n "${NEWCONFIG}" ]; then + exec /sbin/ifup ${NEWCONFIG} + else + echo $"Device ${DEVICE} has different MAC address than expected, ignoring." + exit 1 + fi + fi fi # is the device wireless? If so, configure wireless device specifics -- cgit v1.2.1