diff mbox series

[netifd] system-linux: Do not unconditionally activate IPv6 on devices

Message ID mailman.35553.1643803067.1923571.openwrt-devel@lists.openwrt.org
State Under Review
Delegated to: Hauke Mehrtens
Headers show
Series [netifd] system-linux: Do not unconditionally activate IPv6 on devices | expand

Commit Message

Hauke Mehrtens Feb. 2, 2022, 11:57 a.m. UTC
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
IPv6 can only be activated and deactivated on an interface, not on a
device in netifd. When we call system_set_disable_ipv6(dev, "") in
system_if_clear_state() we will activate IPv6 unconditionally for
devices even when it was deactivated in sysfs before.

When we set this option in /etc/sysctl.d/
	net.ipv6.conf.eth0_0.disable_ipv6 = 1
and add a device setting, but no interface setting in the UCI network
configuration IPv6 will still get activated.

With this change the IPv6 setting will not be changed any more when no
interface is configured. In the interface settings it can still be changed.

Signed-off-by: Hauke Mehrtens <hmehrtens@maxlinear.com>
---
 system-linux.c | 1 -
 1 file changed, 1 deletion(-)

Comments

Jan Venekamp Sept. 7, 2023, 4:53 p.m. UTC | #1
I overlooked this patch when submitting [1]. Slightly different argumentation,
exact same conclusion.

Hauke can you apply this?

Kind regards,
Jan Venekamp

[1] https://patchwork.ozlabs.org/project/openwrt/patch/20230626193755.25155-1-jan@venekamp.net/

Reviewed-by: Jan Venekamp <jan@venekamp.net>
diff mbox series

Patch

diff --git a/system-linux.c b/system-linux.c
index 0b768f8..df36b61 100644
--- a/system-linux.c
+++ b/system-linux.c
@@ -1271,7 +1271,6 @@  void system_if_clear_state(struct device *dev)
 	system_if_clear_entries(dev, RTM_GETADDR, AF_INET6);
 	system_if_clear_entries(dev, RTM_GETNEIGH, AF_INET);
 	system_if_clear_entries(dev, RTM_GETNEIGH, AF_INET6);
-	system_set_disable_ipv6(dev, "0");
 }
 
 static inline unsigned long