HomeFreeBSD

pflogd: Move struct definitions out of header file

Description

pflogd: Move struct definitions out of header file

In libpcap 1.10.5, two structures that we relied on, pcap_timeval and
pcap_sf_pkthdr, were made private. As a workaround, we initially
defined the structures in pflogd.h. After further investigation, mostly
by kp@, we concluded that it is reasonable to define these structures
ourselves since they represent a file format and thus are unlikely to
change from under us. We will stick with this solution but move the
definitions out of the header file to prevent others from using pflogd.h
to access them.

Another solution that was considered was using libpcap's pcap_dump()
function to write packets, but there are blockers. For example, pflogd
writes to a memory buffer, and libpcap lacks support for this.

Reviewed by: kp
MFC after: 3 days
Event: EuroBSDCon 2024
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D46894

Details

Provenance
jrmAuthored on Oct 3 2024, 7:49 PM
Reviewer
kp
Differential Revision
D46894: pflogd: Move struct definitions out of header file
Parents
rG75734c4360fc: tmpfs: check residence in data_locked
Branches
Unknown
Tags
Unknown