svn commit: r360348 - head/sys/netinet6
Alexander V. Chernikov
melifaro at FreeBSD.org
Sun Apr 26 18:07:36 UTC 2020
Author: melifaro
Date: Sun Apr 26 18:07:35 2020
New Revision: 360348
URL: https://svnweb.freebsd.org/changeset/base/360348
Log:
Fix IPv6 link-local operations with RADIX_MPATH.
It was broken by r360292 as fib6_lookup() assumes de-embedded addresses
while rtalloc_mpath_fib() requires sockaddr with embedded ones.
New fib6_lookup() transparently supports multipath, hence
remove old RADIX_MPATH condition.
Modified:
head/sys/netinet6/in6_src.c
Modified: head/sys/netinet6/in6_src.c
==============================================================================
--- head/sys/netinet6/in6_src.c Sun Apr 26 16:30:00 2020 (r360347)
+++ head/sys/netinet6/in6_src.c Sun Apr 26 18:07:35 2020 (r360348)
@@ -93,9 +93,6 @@ __FBSDID("$FreeBSD$");
#include <net/route.h>
#include <net/route/nhop.h>
#include <net/if_llatbl.h>
-#ifdef RADIX_MPATH
-#include <net/radix_mpath.h>
-#endif
#include <netinet/in.h>
#include <netinet/in_var.h>
@@ -773,13 +770,9 @@ selectroute(struct sockaddr_in6 *dstsock, struct ip6_p
}
-#ifdef RADIX_MPATH
- rtalloc_mpath_fib((struct route *)ro,
- ntohl(sa6->sin6_addr.s6_addr32[3]), fibnum);
-#else
ro->ro_nh = fib6_lookup(fibnum,
&sa6->sin6_addr, scopeid, NHR_REF, flowid);
-#endif
+
if (IN6_IS_SCOPE_LINKLOCAL(&sa6->sin6_addr))
sa6->sin6_addr.s6_addr16[1] = htons(scopeid);
}
More information about the svn-src-head
mailing list