Page MenuHomeFreeBSD

pf: align IPv4 and IPv6 AH header handling
ClosedPublic

Authored by kp on Jun 3 2025, 12:48 PM.
Tags
None
Referenced Files
F152459776: D50657.id.diff
Wed, Apr 15, 2:33 AM
Unknown Object (File)
Mon, Apr 6, 3:06 PM
Unknown Object (File)
Sun, Apr 5, 11:18 AM
Unknown Object (File)
Fri, Apr 3, 10:03 PM
Unknown Object (File)
Wed, Mar 18, 5:32 PM
Unknown Object (File)
Wed, Mar 18, 5:27 PM
Unknown Object (File)
Wed, Mar 18, 12:50 AM
Unknown Object (File)
Feb 8 2026, 5:02 PM

Details

Summary

Pf was handling IPv4 and IPv6 differently regarding AH extension
headers. pf_walk_header6() steps over it and detects the real
protocol. So to implement a minimal header walking function
pf_walk_header() for IPv4. It does the header checks and jumps
over AH. Then pf does not understand AH as a protocol, it is just
an extension that authenticates the packet. Move some header and
option checks to pf_walk_header() for consistency with IPv6. This
also improves the header check for IPv4 packets in ICMP payload.
OK henning@

Obtained from: OpenBSD, bluhm <bluhm@openbsd.org>, 22ef11432c
Sponsored by: Rubicon Communications, LLC ("Netgate")

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable