freebsd-dev/sys/netinet6
Bjoern A. Zeeb 1b46c7f832 Allow to provide a hint to in6_selectsrc() for the interface using the
return ifnet double pointer.
Pass that hint down to in6_selectif() to be used when i) the default FIB
is queried and ii) route lookup fails because the network is not present
(i.e. someone deleted the connected subnet).
This hint should not be generally used from anywhere outside the neighbor
discovery code.  We just make use of it from nd6_ns_output().

Extend the nd6_na_output() interface by a nd6_na_output_fib() version
and pass the FIB number from the NS mbuf on to NA to allow the new mbuf
to inherit the FIB tag and a later lookup from ip6_output() to succeed
in the aformentioned example case.
Provide a wrapper function for the old public interface also used from
CARP but mark it with BURN_BRIDGES to cleanup in HEAD after MFC.

Sponsored by:	Cisco Systems, Inc.
2012-02-14 11:51:32 +00:00
..
dest6.c Merge the remainder of kern_vimage.c and vimage.h into vnet.c and 2009-08-01 19:26:27 +00:00
frag6.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
icmp6.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
icmp6.h
in6_cksum.c Fix more continuous/contiguous typos (cf. r215955) 2010-11-27 21:51:39 +00:00
in6_gif.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
in6_gif.h
in6_ifattach.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
in6_ifattach.h
in6_mcast.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
in6_pcb.c Fix false positive EADDRINUSE that could be returned by bind, due to 2011-11-11 14:09:09 +00:00
in6_pcb.h Implement a CPU-affine TCP and UDP connection lookup data structure, 2011-06-06 12:55:02 +00:00
in6_pcbgroup.c Implement a CPU-affine TCP and UDP connection lookup data structure, 2011-06-06 12:55:02 +00:00
in6_proto.c o Convert IPv6 read-only stats sysctls to the read-write ones. 2011-12-19 05:50:34 +00:00
in6_rmx.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
in6_src.c Allow to provide a hint to in6_selectsrc() for the interface using the 2012-02-14 11:51:32 +00:00
in6_var.h Provide the IPv6 counterpart to the extended IPv4 rtalloc(9) KPI. 2012-02-03 09:33:58 +00:00
in6.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
in6.h Remove casts from inet6 address testing macros, thus preserving 2012-01-26 12:04:19 +00:00
ip6_ecn.h
ip6_forward.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
ip6_id.c
ip6_input.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
ip6_ipsec.c Clean up some #endif comments removing from short sections. Add #endif 2012-01-22 02:13:19 +00:00
ip6_ipsec.h
ip6_mroute.c o Convert IPv6 read-only stats sysctls to the read-write ones. 2011-12-19 05:50:34 +00:00
ip6_mroute.h Switch cmd argument to u_long. This matches what if_ethersubr.c does and 2009-06-21 10:29:31 +00:00
ip6_output.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
ip6_var.h Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
ip6.h
ip6protosw.h Introduce an infrastructure for dismantling vnet instances. 2009-06-08 17:15:40 +00:00
mld6_var.h Use ALLOW_NEW_SOURCES and BLOCK_OLD_SOURCES to signal a join or leave 2009-12-22 20:40:22 +00:00
mld6.c Convert all users of IF_ADDR_LOCK to use new locking macros that specify 2012-01-05 19:00:36 +00:00
mld6.h Add MLDv2 protocol header, but do not connect it to the build. 2009-04-29 11:31:23 +00:00
nd6_nbr.c Allow to provide a hint to in6_selectsrc() for the interface using the 2012-02-14 11:51:32 +00:00
nd6_rtr.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
nd6.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
nd6.h Mark a couple of file local functions static and stop exporting them. 2012-01-05 01:14:35 +00:00
pim6_var.h
pim6.h
raw_ip6.c Add SO_SETFIB option support on PF_INET6 sockets and allow inheriting the 2012-02-03 11:00:53 +00:00
raw_ip6.h Remove unused VNET_SET() and related macros; only VNET_GET() is 2009-07-16 21:13:04 +00:00
route6.c Merge the remainder of kern_vimage.c and vimage.h into vnet.c and 2009-08-01 19:26:27 +00:00
scope6_var.h Remove a declaration to a non-existent function. 2011-12-31 16:19:22 +00:00
scope6.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
sctp6_usrreq.c Add an SCTP sysctl "blackhole", similar to the one for TCP. 2012-01-08 09:56:24 +00:00
sctp6_var.h Small cleanup, no functional change. 2012-01-15 14:03:05 +00:00
send.c Mark MALLOC_DEFINEs static that have no corresponding MALLOC_DECLAREs. 2011-11-07 06:44:47 +00:00
send.h Use uint8_t for sockaddr sa_len. 2011-06-05 11:40:30 +00:00
tcp6_var.h Remove unused VNET_SET() and related macros; only VNET_GET() is 2009-07-16 21:13:04 +00:00
udp6_usrreq.c Add support for IPv6 to ipfw fwd: 2011-08-20 17:05:11 +00:00
udp6_var.h