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
Unknown Object (File)
Fri, Aug 14, 6:22 PM
Unknown Object (File)
Fri, Aug 14, 6:21 PM
Unknown Object (File)
Wed, Aug 12, 3:31 AM
Unknown Object (File)
Wed, Aug 12, 3:31 AM
Unknown Object (File)
Sun, Aug 9, 7:11 PM
Unknown Object (File)
Fri, Aug 7, 9:22 PM
Unknown Object (File)
Fri, Aug 7, 7:57 PM
Unknown Object (File)
Fri, Aug 7, 11:24 AM

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