]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
networking/red: wait only for carrier if device exists
authorArne Fitzenreiter <arne_f@ipfire.org>
Sat, 25 Jan 2020 21:22:26 +0000 (22:22 +0100)
committerArne Fitzenreiter <arne_f@ipfire.org>
Sat, 25 Jan 2020 21:22:26 +0000 (22:22 +0100)
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
src/initscripts/networking/red

index 7ce0a6f470acf55727d2ea7ae754189496736193..b619836ae73e2523bab35017ae05f9c0540ee136 100644 (file)
@@ -129,21 +129,23 @@ case "${1}" in
                        ip route add default via ${GATEWAY} dev ${DEVICE}
                        evaluate_retval
                        
-                       # has carrier ?
-                       if [ ! "$(</sys/class/net/${DEVICE}/carrier)" = "1" ]; then
-                               boot_mesg -n "Wait for carrier on ${DEVICE} "
-                               for (( i=30; i>1; i-- )) do
-                                       if [ "$(</sys/class/net/${DEVICE}/carrier)" = "1" ]; then
-                                               break;
-                                       fi
-                                       boot_mesg -n "."
-                                       sleep 2
-                               done
-                               boot_mesg ""
+                       if [ -d "/sys/class/net/${DEVICE}" ]; then
+                               # has carrier ?
                                if [ ! "$(</sys/class/net/${DEVICE}/carrier)" = "1" ]; then
-                                       echo_failure
-                               else
-                                       echo_ok
+                                       boot_mesg -n "Wait for carrier on ${DEVICE} "
+                                       for (( i=30; i>1; i-- )) do
+                                               if [ "$(</sys/class/net/${DEVICE}/carrier)" = "1" ]; then
+                                                       break;
+                                               fi
+                                               boot_mesg -n "."
+                                               sleep 2
+                                       done
+                                       boot_mesg ""
+                                       if [ ! "$(</sys/class/net/${DEVICE}/carrier)" = "1" ]; then
+                                               echo_failure
+                                       else
+                                               echo_ok
+                                       fi
                                fi
                        fi