X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/tripe/blobdiff_plain/90b20d79a9ec5b8a44bb92c8abdb21948aeb062c..ddb384f1ac7fbaed5a4dbb02ddc37d0713727be4:/svc/tripe-ifup.in diff --git a/svc/tripe-ifup.in b/svc/tripe-ifup.in index 8ca0c99c..059c250b 100644 --- a/svc/tripe-ifup.in +++ b/svc/tripe-ifup.in @@ -101,11 +101,30 @@ 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. @@ -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,30 +152,11 @@ 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.