-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix IPv6 reachability patch not being applied (#3240)
Fix regression caused by #3224 which introduced version-specific directory for linux patches, causing the upper-level patch not being applied. Copy the patch to the version folder instead. Also we need to keep it in the upper directory for RPi kernels. (cherry picked from commit 8226323)
- Loading branch information
Showing
2 changed files
with
52 additions
and
0 deletions.
There are no files selected for viewing
52 changes: 52 additions & 0 deletions
52
...rnal/patches/linux/6.6.20/0001-ipv6-add-option-to-explicitly-enable-reachability-te.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
From 76591e4075194cf717dc085b8285912f706bcd46 Mon Sep 17 00:00:00 2001 | ||
From: Stefan Agner <[email protected]> | ||
Date: Tue, 28 Mar 2023 12:02:10 +0200 | ||
Subject: [PATCH] ipv6: add option to explicitly enable reachability test | ||
|
||
Systems which act as host as well as router might prefer the host | ||
behavior. Currently the kernel does not allow to use IPv6 forwarding | ||
globally and at the same time use route reachability probing. | ||
|
||
Add a compile time flag to enable route reachability probe in any | ||
case. | ||
|
||
Signed-off-by: Stefan Agner <[email protected]> | ||
--- | ||
net/ipv6/Kconfig | 9 +++++++++ | ||
net/ipv6/route.c | 3 ++- | ||
2 files changed, 11 insertions(+), 1 deletion(-) | ||
|
||
diff --git a/net/ipv6/Kconfig b/net/ipv6/Kconfig | ||
index 08d4b7132d4c..242bf2eeb7ae 100644 | ||
--- a/net/ipv6/Kconfig | ||
+++ b/net/ipv6/Kconfig | ||
@@ -48,6 +48,15 @@ config IPV6_OPTIMISTIC_DAD | ||
|
||
If unsure, say N. | ||
|
||
+config IPV6_REACHABILITY_PROBE | ||
+ bool "IPv6: Always use reachability probing (RFC 4191)" | ||
+ help | ||
+ By default reachability probing is disabled on router devices (when | ||
+ IPv6 forwarding is enabled). This option explicitly enables | ||
+ reachability probing always. | ||
+ | ||
+ If unsure, say N. | ||
+ | ||
config INET6_AH | ||
tristate "IPv6: AH transformation" | ||
select XFRM_AH | ||
diff --git a/net/ipv6/route.c b/net/ipv6/route.c | ||
index 56525b5b95a2..916769b9a772 100644 | ||
--- a/net/ipv6/route.c | ||
+++ b/net/ipv6/route.c | ||
@@ -2211,7 +2211,8 @@ struct rt6_info *ip6_pol_route(struct net *net, struct fib6_table *table, | ||
|
||
strict |= flags & RT6_LOOKUP_F_IFACE; | ||
strict |= flags & RT6_LOOKUP_F_IGNORE_LINKSTATE; | ||
- if (net->ipv6.devconf_all->forwarding == 0) | ||
+ if (net->ipv6.devconf_all->forwarding == 0 || | ||
+ IS_ENABLED(CONFIG_IPV6_REACHABILITY_PROBE)) | ||
strict |= RT6_LOOKUP_F_REACHABLE; | ||
|
||
rcu_read_lock(); |
File renamed without changes.