aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet6
diff options
context:
space:
mode:
authorAlexander V. Chernikov <melifaro@FreeBSD.org>2020-04-26 18:07:35 +0000
committerAlexander V. Chernikov <melifaro@FreeBSD.org>2020-04-26 18:07:35 +0000
commit49c9f84f54a193b42ed9a1dbfafd609181bf9fa4 (patch)
tree04ed98a7eb2e91583f43eb39c3620878cb60f91b /sys/netinet6
parentdf03977dd83c5040004be18ab507b799ad4ad67b (diff)
downloadsrc-49c9f84f54a193b42ed9a1dbfafd609181bf9fa4.tar.gz
src-49c9f84f54a193b42ed9a1dbfafd609181bf9fa4.zip
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.
Notes
Notes: svn path=/head/; revision=360348
Diffstat (limited to 'sys/netinet6')
-rw-r--r--sys/netinet6/in6_src.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/sys/netinet6/in6_src.c b/sys/netinet6/in6_src.c
index 9ecf2474ba4a..74a4c283388a 100644
--- a/sys/netinet6/in6_src.c
+++ b/sys/netinet6/in6_src.c
@@ -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_pktopts *opts,
}
-#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);
}