linux/net/ipv6
YOSHIFUJI Hideaki 8a6ce0c083 [IPV6]: Use ipv6_addr_src_scope for link address sorting.
In the source address selection, the address must be sorted
from global to node-local.

But, ifp->scope is different from the scope for source address
selection.

                                 2001::1  fe80::1     ::1
ifp->scope                             0     0x02    0x01
ipv6_addr_src_scope(&ifp->addr)     0x0e     0x02    0x01

So, we need to use ipv6_addr_src_scope(&ifp->addr) for sorting.

And, for backward compatibility, addresses should be sorted from
new one to old one.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Acked-by: Brian Haley <brian.haley@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-07-12 13:58:53 -07:00
..
netfilter [NET]: add+use poison defines 2006-07-03 19:47:27 -07:00
addrconf.c [IPV6]: Use ipv6_addr_src_scope for link address sorting. 2006-07-12 13:58:53 -07:00
af_inet6.c Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2006-06-30 15:40:17 -07:00
ah6.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
anycast.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
datagram.c [PATCH] capable/capability.h (net/) 2006-01-11 18:42:14 -08:00
esp6.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
exthdrs_core.c
exthdrs.c [IPV6]: Added GSO support for TCPv6 2006-06-30 14:12:06 -07:00
icmp.c [PATCH] for_each_possible_cpu: network codes 2006-04-11 06:18:31 -07:00
inet6_connection_sock.c Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2006-06-30 15:40:17 -07:00
inet6_hashtables.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ip6_fib.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ip6_flowlabel.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ip6_input.c [IPV6]: Remove redundant length check on input 2006-06-30 14:12:04 -07:00
ip6_output.c [NET] gso: Add skb_is_gso 2006-07-08 13:34:32 -07:00
ip6_tunnel.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ipcomp6.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ipv6_sockglue.c [NET] gso: Fix up GSO packets with broken checksums 2006-07-08 13:34:56 -07:00
ipv6_syms.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
Kconfig [IPSEC] xfrm: Abstract out encapsulation modes 2006-06-17 21:28:39 -07:00
Makefile [IPSEC] xfrm: Abstract out encapsulation modes 2006-06-17 21:28:39 -07:00
mcast.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ndisc.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
netfilter.c [NETFILTER]: Fix build with CONFIG_NETFILTER=y/m on IA64 2006-04-09 22:25:49 -07:00
proc.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
protocol.c
raw.c [IPV6]: Nearly complete kzalloc cleanup for net/ipv6 2006-03-20 23:01:32 -08:00
reassembly.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
route.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sit.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sysctl_net_ipv6.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_ipv6.c [NET] gso: Fix up GSO packets with broken checksums 2006-07-08 13:34:56 -07:00
tunnel6.c [INET]: Move no-tunnel ICMP error to tunnel4/tunnel6 2006-04-09 22:25:25 -07:00
udp.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
xfrm6_input.c [IPSEC] xfrm: Abstract out encapsulation modes 2006-06-17 21:28:39 -07:00
xfrm6_mode_transport.c [IPSEC] proto: Move transport mode input path into xfrm_mode_transport 2006-06-17 21:28:41 -07:00
xfrm6_mode_tunnel.c [IPSEC] xfrm: Abstract out encapsulation modes 2006-06-17 21:28:39 -07:00
xfrm6_output.c [NET] gso: Add skb_is_gso 2006-07-08 13:34:32 -07:00
xfrm6_policy.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
xfrm6_state.c [IPSEC] xfrm: Undo afinfo lock proliferation 2006-06-17 21:28:37 -07:00
xfrm6_tunnel.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00