CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2024/07/14 12:53:39
Modified files:
sys/net : if.c pf.c pf_norm.c
sys/netinet : ip_carp.c ip_icmp.c ip_input.c
sys/netinet6 : icmp6.c ip6_input.c nd6.c nd6.h nd6_nbr.c
nd6_rtr.c
Log message:
Unlock IPv6 sysctl net.inet6.ip6.forwarding from net lock.
Use atomic operations to read ip6_forwarding while processing packets
in the network stack.
To make clear where actually the router property is needed, use the
i_am_router variable based on ip6_forwarding. It already existed
in nd6_nbr. Move i_am_router setting up the call stack until all
users are independent.
The forwarding decisions in pf_test, pf_refragment6, ip6_input do
also not interfere.
Use a new array ipv6ctl_vars_unlocked to make transition of all the
integer sysctls easier. Adapt IPv4 to the new style.
OK mvs@