Merge the `connect' and `watch' services.
[tripe] / svc / tripe-ifup.in
index 8ca0c99..059c250 100644 (file)
@@ -101,12 +101,31 @@ case $have6,$# in
       haveaddr6=t
     done
     case ${r6addr+set} in
-      set) ip route add $r6addr/128 dev "$ifname" ;;
+      set) ip route add $r6addr/128 proto static dev "$ifname" ;;
     esac
     ;;
 esac
 
 ###--------------------------------------------------------------------------
+### Bring the interface up.
+
+case $haveaddr4,$haveaddr6 in
+  nil,nil)
+    ;;
+  *)
+    case "${P_MTU+set}" in
+      set)
+       mtu=$P_MTU;;
+      *)
+       pathmtu=$(pathmtu "$addr")
+       mtu=$(expr "$pathmtu" - 33 - $A_CIPHER_BLKSZ - $A_MAC_TAGSZ)
+       ;;
+    esac
+    ip link set dev "$ifname" up mtu "$mtu"
+    ;;
+esac
+
+###--------------------------------------------------------------------------
 ### Set up routing.
 
 ## Split the routes into v4 and v6 lists.
@@ -123,7 +142,7 @@ set -- $route4
 case $haveaddr4,$# in
   t,[1-9]*)
     for p in "$@"; do
-      ip route add $p via "$r4addr"
+      ip route add $p proto static via "$r4addr"
     done
     ;;
 esac
@@ -133,31 +152,12 @@ set -- $route6
 case $haveaddr6,$# in
   t,[1-9]*)
     for p in "$@"; do
-      ip route add $p via "$r6addr"
+      ip route add $p proto static via "$r6addr"
     done
     ;;
 esac
 
 ###--------------------------------------------------------------------------
-### Bring the interface up.
-
-case $haveaddr4,$haveaddr6 in
-  nil,nil)
-    ;;
-  *)
-    case "${P_MTU+set}" in
-      set)
-       mtu=$P_MTU;;
-      *)
-       pathmtu=$(pathmtu "$addr")
-       mtu=$(expr "$pathmtu" - 33 - $A_CIPHER_BLKSZ - $A_MAC_TAGSZ)
-       ;;
-    esac
-    ip link set dev "$ifname" up mtu "$mtu"
-    ;;
-esac
-
-###--------------------------------------------------------------------------
 ### Maybe invoke a follow-on script.
 
 case "${P_IFUPEXTRA+set}" in