]> pd.if.org Git - startuptools/blobdiff - scripts/ifup
fix test in ifup
[startuptools] / scripts / ifup
index d5489b1ef7f52521e8c4fd9d70371a9159abe383..200d431c83f03bb5a1f54382f37196db8f8eb9a8 100755 (executable)
@@ -1,5 +1,7 @@
 #!/bin/sh
 
+set -e
+
 net=$1
 
 saveifs="$IFS"
@@ -22,13 +24,20 @@ if [ "$enable" = 'no' ]; then exit 0; fi
 
 ifup_pre
 
+# need to check to make sure the link exists
+ip link show dev $dev >/dev/null 2>&1 || exit 1
+
 ip link set dev $dev up
 
-for address in $addr; do
-       IFS="$saveifs"
-       ip addr add $address dev $dev
-       IFS=';'
-done
+if [ "$addr" = 'dhcp' ]; then
+       /sbin/dhcpcd -q $dev
+else
+       for address in $addr; do
+               IFS="$saveifs"
+               ip addr add $address dev $dev
+               IFS=';'
+       done
+fi
 
 for r in $route; do
        IFS="$saveifs"