Module Name:    src
Committed By:   knakahara
Date:           Thu Apr 11 07:34:37 UTC 2024

Modified Files:
        src/sys/netinet: sctp_asconf.c
        src/sys/netinet6: in6_ifattach.c nd6.c

Log Message:
Fix invalid IPv6 route when ipsecif(4) is deleted tunnel.  Pointed out by 
ohishi@IIJ.

The pointed bug is fixed by modification in nd6_need_cache().
Others are similar bugs.

XXX pullup-9, 10


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/sys/netinet/sctp_asconf.c
cvs rdiff -u -r1.121 -r1.122 src/sys/netinet6/in6_ifattach.c
cvs rdiff -u -r1.281 -r1.282 src/sys/netinet6/nd6.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/netinet/sctp_asconf.c
diff -u src/sys/netinet/sctp_asconf.c:1.13 src/sys/netinet/sctp_asconf.c:1.14
--- src/sys/netinet/sctp_asconf.c:1.13	Fri Feb  9 22:08:37 2024
+++ src/sys/netinet/sctp_asconf.c	Thu Apr 11 07:34:37 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: sctp_asconf.c,v 1.13 2024/02/09 22:08:37 andvar Exp $ */
+/*	$NetBSD: sctp_asconf.c,v 1.14 2024/04/11 07:34:37 knakahara Exp $ */
 /*	$KAME: sctp_asconf.c,v 1.25 2005/06/16 20:44:24 jinmei Exp $	*/
 
 /*
@@ -30,7 +30,7 @@
  * SUCH DAMAGE.
  */
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sctp_asconf.c,v 1.13 2024/02/09 22:08:37 andvar Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sctp_asconf.c,v 1.14 2024/04/11 07:34:37 knakahara Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_ipsec.h"
@@ -1540,6 +1540,7 @@ sctp_is_desired_interface_type(struct if
 	case IFT_XETHER:
 	case IFT_SLIP:
 	case IFT_GIF:
+	case IFT_IPSEC:
 		result = 1;
 		break;
 	default:

Index: src/sys/netinet6/in6_ifattach.c
diff -u src/sys/netinet6/in6_ifattach.c:1.121 src/sys/netinet6/in6_ifattach.c:1.122
--- src/sys/netinet6/in6_ifattach.c:1.121	Thu Dec 22 02:52:35 2022
+++ src/sys/netinet6/in6_ifattach.c	Thu Apr 11 07:34:37 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: in6_ifattach.c,v 1.121 2022/12/22 02:52:35 msaitoh Exp $	*/
+/*	$NetBSD: in6_ifattach.c,v 1.122 2024/04/11 07:34:37 knakahara Exp $	*/
 /*	$KAME: in6_ifattach.c,v 1.124 2001/07/18 08:32:51 jinmei Exp $	*/
 
 /*
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: in6_ifattach.c,v 1.121 2022/12/22 02:52:35 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: in6_ifattach.c,v 1.122 2024/04/11 07:34:37 knakahara Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -262,6 +262,7 @@ in6_get_hw_ifid(struct ifnet *ifp, struc
 		break;
 
 	case IFT_GIF:
+	case IFT_IPSEC:
 #ifdef IFT_STF
 	case IFT_STF:
 #endif

Index: src/sys/netinet6/nd6.c
diff -u src/sys/netinet6/nd6.c:1.281 src/sys/netinet6/nd6.c:1.282
--- src/sys/netinet6/nd6.c:1.281	Sat Dec  9 15:21:02 2023
+++ src/sys/netinet6/nd6.c	Thu Apr 11 07:34:37 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: nd6.c,v 1.281 2023/12/09 15:21:02 pgoyette Exp $	*/
+/*	$NetBSD: nd6.c,v 1.282 2024/04/11 07:34:37 knakahara Exp $	*/
 /*	$KAME: nd6.c,v 1.279 2002/06/08 11:16:51 itojun Exp $	*/
 
 /*
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nd6.c,v 1.281 2023/12/09 15:21:02 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nd6.c,v 1.282 2024/04/11 07:34:37 knakahara Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_compat_netbsd.h"
@@ -1655,6 +1655,7 @@ nd6_need_cache(struct ifnet *ifp)
 	case IFT_IEEE1394:
 	case IFT_CARP:
 	case IFT_GIF:		/* XXX need more cases? */
+	case IFT_IPSEC:
 	case IFT_PPP:
 	case IFT_TUNNEL:
 		return 1;

Reply via email to