From: Harald Hoyer Date: Thu, 30 Jun 2016 06:52:09 +0000 (+0200) Subject: network/net-lib.sh: auto6 wait for route ra X-Git-Tag: 045~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e8dc8c4d89586165551fe2df992e50b9a5203362;p=thirdparty%2Fdracut.git network/net-lib.sh: auto6 wait for route ra Wait for a router advertised route (cherry picked from commit 6d22a6860ea22d4b5a78d0328be4524579cece98) --- diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh index d52682827..0c375c3f1 100755 --- a/modules.d/40network/net-lib.sh +++ b/modules.d/40network/net-lib.sh @@ -664,16 +664,14 @@ wait_for_ipv6_dad() { wait_for_ipv6_auto() { local cnt=0 - local li local timeout="$(getargs rd.net.timeout.ipv6auto=)" timeout=${timeout:-40} timeout=$(($timeout*10)) while [ $cnt -lt $timeout ]; do - li=$(ip -6 addr show dev $1) - if ! strstr "$li" "tentative"; then - strstr "$li" "dynamic" && return 0 - fi + [ -z "$(ip -6 addr show dev "$1" scope global tentative)" ] \ + && [ -n "$(ip -6 route list proto ra dev "$1")" ] \ + && return 0 sleep 0.1 cnt=$(($cnt+1)) done