aboutsummaryrefslogtreecommitdiff
path: root/net.Linux/ifconfig.sh
diff options
context:
space:
mode:
authorRoy Marples <roy@marples.name>2007-08-03 13:53:20 +0000
committerRoy Marples <roy@marples.name>2007-08-03 13:53:20 +0000
commit65a9e4618baadff217dd36216b5c64f2ad66dfc6 (patch)
tree073e7e99893f971d972ecb22ac328dba309c3563 /net.Linux/ifconfig.sh
parenta3aff5d83cc3cbe2db1515e4a9ae7c7bd66d55c6 (diff)
Fix static IPv6 routes, #187514.
Diffstat (limited to 'net.Linux/ifconfig.sh')
-rw-r--r--net.Linux/ifconfig.sh17
1 files changed, 13 insertions, 4 deletions
diff --git a/net.Linux/ifconfig.sh b/net.Linux/ifconfig.sh
index e30ff8eb..7192ca8a 100644
--- a/net.Linux/ifconfig.sh
+++ b/net.Linux/ifconfig.sh
@@ -161,6 +161,12 @@ _add_address() {
}
_add_route() {
+ local inet6=
+
+ if [ -n "${metric}" ] ; then
+ set -- "$@" metric ${metric}
+ fi
+
if [ $# -eq 3 ] ; then
set -- "$1" "$2" gw "$3"
elif [ "$3" = "via" ] ; then
@@ -169,11 +175,14 @@ _add_route() {
set -- "${one}" "${two}" gw "$@"
fi
- if [ -n "${metric}" ] ; then
- set -- "$@" metric ${metric}
- fi
+ case "$@" in
+ *:*)
+ inet6="-A inet6"
+ [ "$1" = "-net" ] && shift
+ ;;
+ esac
- route add "$@"
+ route ${inet6} add "$@" dev "${IFACE}"
}
_delete_addresses() {