opnsense-src/sys/netinet6
Kristof Provost 23d8e956fb icmp6: fix use-after-reference-release
We release the reference to the in6_ifaddr but retain a pointer to it.
Copy the address itself, rather than keeping the pointer to fix this.

The previous version was actually safe, because  ifa_free() uses an epoch
callback to free it, so the pointer would have remained valid as long as we are
in net_epoch.
Change it to copying the address anyway because it is more obviously correct and
will remain correct even if ifa_free() changes later.

Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D50460
2025-05-27 11:47:43 +02:00
..
dest6.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
frag6.c vm_lowmem: Fix signature mismatches in vm_lowmem callbacks 2025-03-04 20:18:52 -05:00
icmp6.c icmp6: fix use-after-reference-release 2025-05-27 11:47:43 +02:00
icmp6.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
in6.c netinet6: Remove a set but not used global variable in6_maxmtu 2025-05-21 18:09:01 +08:00
in6.h ip6_cksum.c: generalize in6_cksum_partial() to allow L2 headers in passed mbuf 2025-03-13 17:56:22 +02:00
in6_cksum.c ip6_cksum.c: generalize in6_cksum_partial() to allow L2 headers in passed mbuf 2025-03-13 17:56:22 +02:00
in6_fib.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
in6_fib.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
in6_fib_algo.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
in6_gif.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
in6_ifattach.c netinet6: Remove a set but not used global variable in6_maxmtu 2025-05-21 18:09:01 +08:00
in6_ifattach.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
in6_jail.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
in6_mcast.c netinet: Remove stale references to Giant from comments 2024-01-27 13:51:13 -05:00
in6_pcb.c netinet6: allow binding to anycast addresses 2025-04-24 01:50:38 +01:00
in6_pcb.h inpcb: Add FIB-aware inpcb lookup 2025-02-06 14:14:39 +00:00
in6_proto.c icmp6: move ICMPv6 related tunables to the files where they are used 2024-03-24 09:13:23 -07:00
in6_rmx.c in6_rmx: remove unnecessary socketvar.h 2024-05-07 14:15:56 -07:00
in6_rss.c sys: Remove $FreeBSD$: two-line .c pattern 2023-08-16 11:54:30 -06:00
in6_rss.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
in6_src.c netinet: add a probe point for IP, IP6, ICMP, ICMP6, UDP and TCP stats counters 2024-04-08 17:29:59 +02:00
in6_var.h netinet6: Remove a set but not used global variable in6_maxmtu 2025-05-21 18:09:01 +08:00
ip6.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
ip6_ecn.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
ip6_fastfwd.c ip: Defer checks for an unspecified dstaddr until after pfil hooks 2025-01-16 16:45:16 +00:00
ip6_forward.c netinet6: Do not forward or send ICMPv6 messages to the unspec address 2025-04-22 14:54:37 +00:00
ip6_gre.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ip6_id.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ip6_input.c ip: Defer checks for an unspecified dstaddr until after pfil hooks 2025-01-16 16:45:16 +00:00
ip6_mroute.c netinet*: Add assertions for some places that don't support M_EXTPG mbufs 2024-10-31 16:32:32 -04:00
ip6_mroute.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
ip6_output.c socket: Move SO_SETFIB handling to protocol layers 2025-02-06 14:16:21 +00:00
ip6_var.h vm_lowmem: Fix signature mismatches in vm_lowmem callbacks 2025-03-04 20:18:52 -05:00
ip_fw_nat64.h ipfw: migrate ipfw to 32-bit size rule numbers 2025-03-03 21:15:17 +03:00
ip_fw_nptv6.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mld6.c netinet: add a probe point for IP, IP6, ICMP, ICMP6, UDP and TCP stats counters 2024-04-08 17:29:59 +02:00
mld6.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mld6_var.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
nd6.c netinet6: Remove a set but not used global variable in6_maxmtu 2025-05-21 18:09:01 +08:00
nd6.h icmp6: move ICMPv6 related tunables to the files where they are used 2024-03-24 09:13:23 -07:00
nd6_nbr.c netinet: add a probe point for IP, IP6, ICMP, ICMP6, UDP and TCP stats counters 2024-04-08 17:29:59 +02:00
nd6_rtr.c netinet6: Remove a set but not used global variable in6_maxmtu 2025-05-21 18:09:01 +08:00
pim6.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
pim6_var.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
raw_ip6.c rawip: Add a bind_all_fibs sysctl 2025-02-06 14:16:36 +00:00
raw_ip6.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
route6.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
scope6.c netinet6: Fix two typos in source code comments 2024-01-22 21:48:34 +01:00
scope6_var.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
sctp6_usrreq.c netinet: Fix getcred sysctl handlers to do nothing if no input is given 2025-03-20 01:33:44 +00:00
sctp6_var.h sctp: cleanup cdefs.h include 2023-08-18 15:25:34 +02:00
send.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
send.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
tcp6_var.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
udp6_usrreq.c ip6: leave room for link headers in UDP 2025-04-15 19:44:56 -04:00
udp6_var.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00