diff options
| author | R. Christian McDonald <rcm@FreeBSD.org> | 2026-10-13 13:39:30 +0000 |
|---|---|---|
| committer | R. Christian McDonald <rcm@FreeBSD.org> | 2026-10-13 13:39:30 +0000 |
| commit | b951994eddd4d274514df751da06680a32139037 (patch) | |
| tree | 7e2dadc76318bc6cd26c6f4132c6327cbb98fa7a /sys/modules/bhnd/bcma/(developers-only) | |
| parent | b5219c068fbc133dde91d5cf48423e34ce27bd4f (diff) | |
DIOCSETREASS stored V_pf_status.reass twice with no lock, first the
flags it was given and then, if reassembly was not among them, zero.
pf_normalize_ip() and pf_normalize_ip6() read the flags with the rules
lock held for reading, so a packet could see the intermediate value.
Compute the flags first and store them once, with the rules lock held
for writing, as DIOCSETDEBUG and DIOCSETHOSTID do.
Reviewed by: kp
Fixes: 39282ef356db ("pf: backport OpenBSD syntax of "scrub" option for "match" and "pass" rules")
MFC after: 2 weeks
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D60531
Diffstat (limited to 'sys/modules/bhnd/bcma/(developers-only)')
0 files changed, 0 insertions, 0 deletions
