git: 52d4c9e2fa02 - releng/13.0 - Fix crash with rtadv-originated multipath IPv6 routes.

Alexander V. Chernikov melifaro at FreeBSD.org
Thu Feb 25 21:56:35 UTC 2021


The branch releng/13.0 has been updated by melifaro:

URL: https://cgit.FreeBSD.org/src/commit/?id=52d4c9e2fa024c36ea75ad17c50a9e66d2dbdc8c

commit 52d4c9e2fa024c36ea75ad17c50a9e66d2dbdc8c
Author:     Alexander V. Chernikov <melifaro at FreeBSD.org>
AuthorDate: 2021-02-24 16:42:48 +0000
Commit:     Alexander V. Chernikov <melifaro at FreeBSD.org>
CommitDate: 2021-02-25 21:55:58 +0000

    Fix crash with rtadv-originated multipath IPv6 routes.
    
    PR:             253800
    Reported by:    Frederic Denis <freebsdml at hecian.net>
    Approved by:    re(gjb)
    
    (cherry picked from commit 7dfdd039a3584885648d33888359032479038dc1)
---
 sys/netinet6/nd6_rtr.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/sys/netinet6/nd6_rtr.c b/sys/netinet6/nd6_rtr.c
index 51b831a956bc..2f721b4edcc3 100644
--- a/sys/netinet6/nd6_rtr.c
+++ b/sys/netinet6/nd6_rtr.c
@@ -61,7 +61,6 @@ __FBSDID("$FreeBSD$");
 #include <net/route.h>
 #include <net/route/nhop.h>
 #include <net/route/route_ctl.h>
-#include <net/route/route_var.h>
 #include <net/radix.h>
 #include <net/vnet.h>
 
@@ -699,7 +698,7 @@ defrouter_addreq(struct nd_defrouter *new)
 	NET_EPOCH_ASSERT();
 	error = rib_action(fibnum, RTM_ADD, &info, &rc);
 	if (error == 0) {
-		struct nhop_object *nh = nhop_select(rc.rc_nh_new, 0);
+		struct nhop_object *nh = nhop_select_func(rc.rc_nh_new, 0);
 		rt_routemsg(RTM_ADD, rc.rc_rt, nh, fibnum);
 		new->installed = 1;
 	}
@@ -739,7 +738,7 @@ defrouter_delreq(struct nd_defrouter *dr)
 	NET_EPOCH_ENTER(et);
 	error = rib_action(fibnum, RTM_DELETE, &info, &rc);
 	if (error == 0) {
-		struct nhop_object *nh = nhop_select(rc.rc_nh_old, 0);
+		struct nhop_object *nh = nhop_select_func(rc.rc_nh_old, 0);
 		rt_routemsg(RTM_DELETE, rc.rc_rt, nh, fibnum);
 	}
 	NET_EPOCH_EXIT(et);


More information about the dev-commits-src-all mailing list