New mac address will be set on startup/reboot
authorJan Paul Tuecking <earl@ipfire.org>
Thu, 16 Jul 2009 15:58:31 +0000 (17:58 +0200)
committerJan Paul Tuecking <earl@ipfire.org>
Thu, 16 Jul 2009 15:58:31 +0000 (17:58 +0200)
src/initscripts/init.d/networking/red

index f90e07378d5d3767d91f3a1a862fb5f282471681..5c96c06911797cd610f7f8b53b8bb265e96d0909 100644 (file)
@@ -26,6 +26,9 @@ if [ "$RRDLOG" == "" ]; then
 fi
 
 eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
+eval $(/usr/local/bin/readhash /var/ipfire/mac/settings)
+
+MAC=$(tr - : <<<$MAC)
 
 TYPE="${RED_TYPE}"
 DEVICE="${RED_DEV}"
@@ -87,6 +90,11 @@ case "${1}" in
                                link_status=`ip link show ${DEVICE} 2> /dev/null`
                                if [ -n "${link_status}" ]; then
                                        if ! echo "${link_status}" | grep -q UP; then
+                                               if [ -n "$MAC" ]; then
+                                                       boot_mesg "Setting mac address on ${DEVICE} to ${MAC}"  
+                                                       ip link set dev ${DEVICE} address ${MAC}
+                                                       evaluate_retval         
+                                               fi
                                                ip link set ${DEVICE} up
                                        fi
                                fi
@@ -122,10 +130,7 @@ case "${1}" in
                        evaluate_retval
                        
                        run_subdir ${rc_base}/init.d/networking/red.up/
-
-                       # Configure aliases only if red static
-                       /usr/local/bin/setaliases
-
+                       
                elif [ "${TYPE}" == "DHCP" ]; then
 
                        if [ -e $LEASEINFO ]; then