diff --git a/ChangeLog b/ChangeLog index 038fba08..08572d1c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for Gentoo System Intialization ("rc") scripts # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPLv2 + 03 Aug 2007; Roy Marples : + + Fix static IPv6 routes, #187514. + * baselayout-2.0.0_rc1 (02 Aug 2007) 01 Aug 2007; Mike Frysinger : 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() { diff --git a/net.Linux/iproute2.sh b/net.Linux/iproute2.sh index 30206d03..fa1171d4 100644 --- a/net.Linux/iproute2.sh +++ b/net.Linux/iproute2.sh @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 iproute2_depend() { - program /sbin/ip + program /sbin/ip provide interface after ifconfig }