Author: cyrus Date: 2015-07-13 23:51:38 +0200 (Mon, 13 Jul 2015) New Revision: 46335
Modified: trunk/package/network/ipv6/odhcp6c/files/dhcpv6.script Log: odhcp6c: fix some more compatibility issues Signed-off-by: Steven Barth <[email protected]> Modified: trunk/package/network/ipv6/odhcp6c/files/dhcpv6.script =================================================================== --- trunk/package/network/ipv6/odhcp6c/files/dhcpv6.script 2015-07-13 19:52:14 UTC (rev 46334) +++ trunk/package/network/ipv6/odhcp6c/files/dhcpv6.script 2015-07-13 21:51:38 UTC (rev 46335) @@ -76,6 +76,7 @@ done for entry in $RA_ROUTES; do + local duplicate=0 local addr="${entry%%/*}" entry="${entry#*/}" local mask="${entry%%,*}" @@ -86,12 +87,16 @@ entry="${entry#*,}" local metric="${entry%%,*}" - if [ -z "$gw" ]; then + for xentry in $RA_ROUTES; do + local xprefix="${xentry%%,*}" + xentry="${xentry#*,}" + local xgw="${xentry%%,*}" + + [ -n "$gw" -a -z "$xgw" -a "$addr/$mask" = "$xprefix" ] && duplicate=1 + done + + if [ -z "$gw" -o "$duplicate" = 1 ]; then proto_add_ipv6_route "$addr" "$mask" "$gw" "$metric" "$valid" - - # work around if there is a PIO matching a RIO - # Linux seems to prefer source-dest over dest-only even if metric is higher - proto_add_ipv6_route "$addr" "$mask" "$gw" "$metric" "$valid" "$addr/$mask" else for prefix in $PREFIXES $ADDRESSES; do local paddr="${prefix%%,*}" _______________________________________________ openwrt-commits mailing list [email protected] https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits
