On 7/2/25 3:05 AM, Nicolas Dichtel wrote: > Le 02/07/2025 à 09:46, Gabriel Goller a écrit : >> It is currently impossible to enable ipv6 forwarding on a per-interface >> basis like in ipv4. To enable forwarding on an ipv6 interface we need to >> enable it on all interfaces and disable it on the other interfaces using >> a netfilter rule. This is especially cumbersome if you have lots of >> interface and only want to enable forwarding on a few. According to the >> sysctl docs [0] the `net.ipv6.conf.all.forwarding` enables forwarding >> for all interfaces, while the interface-specific >> `net.ipv6.conf.<interface>.forwarding` configures the interface >> Host/Router configuration. >> >> Introduce a new sysctl flag `force_forwarding`, which can be set on every >> interface. The ip6_forwarding function will then check if the global >> forwarding flag OR the force_forwarding flag is active and forward the >> packet. >> >> To preserver backwards-compatibility reset the flag (on all interfaces) >> to 0 if the net.ipv6.conf.all.forwarding flag is set to 0. >> >> [0]: https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt >> >> Signed-off-by: Gabriel Goller <g.goller@xxxxxxxxxxx> >> --- [snip] >> +static int addrconf_sysctl_force_forwarding(const struct ctl_table *ctl, int write, >> + void *buffer, size_t *lenp, loff_t *ppos) >> +{ >> + int *valp = ctl->data; >> + int ret; >> + int old, new; >> + >> + // get extra params from table > /* */ for comment > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/coding-style.rst#n598 Hm, lots there from the BK to git transfer in 2005, with a few updates by Mauro, Jakub, and myself. More recently (2016!), Linus said this: https://lore.kernel.org/lkml/CA+55aFyQYJerovMsSoSKS7PessZBr4vNp-3QUUwhqk4A4_jcbg@xxxxxxxxxxxxxx/ which seems to allow for "//" style commenting. But yeah, it hasn't been added to coding-style.rst. >> + struct inet6_dev *idev = ctl->extra1; >> + struct net *net = ctl->extra2; > Reverse x-mas tree for the variables declaration > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/maintainer-netdev.rst#n368 Shouldn't maintainer-netdev.rst contain something about netdev-style comment blocks? (not that I'm offering since I think it's ugly) -- ~Randy