From: Dave Young Date: Thu, 16 Feb 2012 01:36:29 +0000 (+0800) Subject: add function wait_for_route_ok X-Git-Tag: 017~36 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=75cade1216b62957efad7e97c77e4e8b0414a515;p=thirdparty%2Fdracut.git add function wait_for_route_ok Manually setuping nic through udev is not always done when we want network access. Here add a function wait_for_route_ok to wait and make sure the network is accesible [v1 -> v2]: Harald: don't use bash syntax Add check for [ -n "$li" ] because `ip route show` will show nothing probably Signed-off-by: Dave Young --- diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh index 6b70adfe3..afd366ea2 100755 --- a/modules.d/99base/dracut-lib.sh +++ b/modules.d/99base/dracut-lib.sh @@ -392,6 +392,17 @@ wait_for_if_up() { return 1 } +wait_for_route_ok() { + local cnt=0 + while [ $cnt -lt 200 ]; do + li=$(ip route show) + [ -n "$li" ] && [ -z "${li##*$1*}" ] && return 0 + sleep 0.1 + cnt=$(($cnt+1)) + done + return 1 +} + # root=nfs:[:][:] # root=nfs4:[:][:] nfsroot_to_var() {