diff options
-rw-r--r-- | init.d/net-online.in | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/init.d/net-online.in b/init.d/net-online.in index 41910fa0..cd0cb4e2 100644 --- a/init.d/net-online.in +++ b/init.d/net-online.in @@ -44,9 +44,13 @@ start () ifcount=0 for dev in ${interfaces}; do : $((ifcount += 1)) - read carrier < /sys/class/net/$dev/carrier 2> /dev/null - [ $carrier -eq 1 ] && : $((carriers += 1)) - read operstate < /sys/class/net/$dev/operstate 2> /dev/null + carrier= + [ -e /sys/class/net/$dev/carrier ] && + read carrier < /sys/class/net/$dev/carrier + [ "$carrier" = 1 ] && : $((carriers += 1)) + operstate= + [ -e /sys/class/net/$dev/operstate ] && + read operstate < /sys/class/net/$dev/operstate [ "$operstate" = up ] && : $((configured += 1)) done [ $configured -eq $ifcount ] && [ $carriers -ge 1 ] && break |