1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-10-18 02:19:39 +00:00
freebsd/sys/netpfil
Kajetan Staszkiewicz 65074f6f31 pf: fix double ruleset evaluation for fragments sent to dummynet
The function `pf_setup_pdesc()` handles ruleset evaluation for non-reassembled
packets. Having it called before `pf_mtag` is checked for flags
`PF_MTAG_FLAG_ROUTE_TO` and `PF_MTAG_FLAG_DUMMYNET` will cause loops for
fragmented packets if reassembly is disabled.

Move `pd` zeroing and `pf_mtag` extraction from `pf_setup_pdesc()` to a separate
function `pf_init_pdesc()` and change the order of function calls: first
call `pf_init_pdesc()`, then check if the currently processed packet has been
reinjected from dummynet, finally call `pf_setup_pdesc()`.

Add functionality of sending UDP packets to `pft_ping.py` with fragmentation
support and fix broken IPv6 reassembly.

Reviewed by:	kp
Differential Revision:	https://reviews.freebsd.org/D46880
2024-10-03 13:49:57 +02:00
..
ipfilter/netinet ipfilter(4): Fix typos in source code comments 2024-07-21 11:02:31 +02:00
ipfw dummynet: fix pie 2024-09-06 12:34:33 -06:00
pf pf: fix double ruleset evaluation for fragments sent to dummynet 2024-10-03 13:49:57 +02:00