Remove struct inpcb from in6_embedscope() parameters.
authorbluhm <bluhm@openbsd.org>
Tue, 28 Nov 2023 13:23:20 +0000 (13:23 +0000)
committerbluhm <bluhm@openbsd.org>
Tue, 28 Nov 2023 13:23:20 +0000 (13:23 +0000)
commit952c6363a519d5ecee6717646d7c24b911461cd2
tree7724878f325e3b5b31ccef3e603e53823b8a2d30
parentdd7d88cbe18508044063c2e8302f53f87ee7e90d
Remove struct inpcb from in6_embedscope() parameters.

rip6_output() did modify inp_outputopts6 temporarily to provide
different ip6_pktopts to in6_embedscope().  Better pass inp_outputopts6
and inp_moptions6 as separate arguments to in6_embedscope().
Simplify the code that deals with these options in in6_embedscope().
Doucument inp_moptions and inp_moptions6 as protected by net lock.

OK kn@
17 files changed:
sys/net/if_etherip.c
sys/net/if_gif.c
sys/net/if_gre.c
sys/net/if_vxlan.c
sys/net/pfkeyv2_convert.c
sys/net/pipex.c
sys/netinet/in_pcb.h
sys/netinet/ip_ipip.c
sys/netinet/tcp_usrreq.c
sys/netinet/udp_usrreq.c
sys/netinet6/icmp6.c
sys/netinet6/in6.h
sys/netinet6/in6_pcb.c
sys/netinet6/in6_src.c
sys/netinet6/ip6_output.c
sys/netinet6/raw_ip6.c
sys/netinet6/udp6_output.c