add function wait_for_route_ok
authorDave Young <dyoung@redhat.com>
Thu, 16 Feb 2012 01:36:29 +0000 (09:36 +0800)
committerHarald Hoyer <harald@redhat.com>
Thu, 16 Feb 2012 10:19:07 +0000 (11:19 +0100)
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 <dyoung@redhat.com>
modules.d/99base/dracut-lib.sh

index 6b70adf..afd366e 100755 (executable)
@@ -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:[<server-ip>:]<root-dir>[:<nfs-options>]
 # root=nfs4:[<server-ip>:]<root-dir>[:<nfs-options>]
 nfsroot_to_var() {