Merge struct route and struct route_in6.
authorbluhm <bluhm@openbsd.org>
Tue, 13 Feb 2024 12:22:09 +0000 (12:22 +0000)
committerbluhm <bluhm@openbsd.org>
Tue, 13 Feb 2024 12:22:09 +0000 (12:22 +0000)
commit94c0e2bd60f346b99cc50d840aac5f7019b7b57b
treedfaaa650c8e6ca3e84b20fec04174e1c43272e97
parent41227241473765b6e3e22fcc7c0aa0f202c662d4
Merge struct route and struct route_in6.

Use a common struct route for both inet and inet6.  Unfortunately
struct sockaddr is shorter than sockaddr_in6, so netinet/in.h has
to be exposed from net/route.h.  Struct route has to be bsd visible
for userland as netstat kvm code inspects inp_route.  Internet PCB
and TCP SYN cache can use a plain struct route now.  All specific
sockaddr types for inet and inet6 are embeded there.

OK claudio@
31 files changed:
sys/net/if_bridge.c
sys/net/if_etherip.c
sys/net/if_pfsync.c
sys/net/if_veb.c
sys/net/route.c
sys/net/route.h
sys/netinet/in.h
sys/netinet/in_pcb.c
sys/netinet/in_pcb.h
sys/netinet/ip_carp.c
sys/netinet/ip_input.c
sys/netinet/ip_output.c
sys/netinet/ip_var.h
sys/netinet/tcp_input.c
sys/netinet/tcp_output.c
sys/netinet/tcp_subr.c
sys/netinet/tcp_var.h
sys/netinet6/dest6.c
sys/netinet6/in6.h
sys/netinet6/in6_pcb.c
sys/netinet6/in6_src.c
sys/netinet6/ip6_divert.c
sys/netinet6/ip6_forward.c
sys/netinet6/ip6_id.c
sys/netinet6/ip6_output.c
sys/netinet6/ip6_var.h
sys/netinet6/mld6.c
sys/netinet6/raw_ip6.c
sys/netinet6/route6.c
sys/netinet6/udp6_output.c
usr.bin/netstat/inet.c