The branch releng/14.4 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=28b5b653a5672104d5c376a2d36fc4282e6bc062
commit 28b5b653a5672104d5c376a2d36fc4282e6bc062 Author: Timo Völker <[email protected]> AuthorDate: 2026-02-19 14:15:10 +0000 Commit: Colin Percival <[email protected]> CommitDate: 2026-02-19 19:21:55 +0000 icmp6: clear csum_flags on mbuf reuse When icmp6 sends an ICMPv6 message, it reuses the mbuf of the packet that triggered the ICMPv6 message and prepends an IPv6 and ICMPv6 header. For a locally generated packet with checksum offloading, the mbuf still has csum_flags set indicating that a SCTP/TCP/UDP checksum has to be computed and inserted. Since this not the case anymore, csum_flags need to be cleared. PR: 293227 Reviewed by: kp, zlei, tuexen MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55367 (cherry picked from commit ada4dc77577f7162353e8c2916ba5c258b6210f0) (cherry picked from commit 0a87ae18331d5c52dde1e5a4f13ee577e8e5e188) --- sys/netinet6/icmp6.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/netinet6/icmp6.c b/sys/netinet6/icmp6.c index 8d6e04c926c7..3fe0bec536e8 100644 --- a/sys/netinet6/icmp6.c +++ b/sys/netinet6/icmp6.c @@ -2163,6 +2163,7 @@ icmp6_reflect(struct mbuf *m, size_t off) m->m_flags &= ~(M_BCAST|M_MCAST); m->m_pkthdr.rcvif = NULL; + m->m_pkthdr.csum_flags = 0; ip6_output(m, NULL, NULL, 0, NULL, &outif, NULL); if (outif) icmp6_ifoutstat_inc(outif, type, code);
