Page MenuHomeFreeBSD

ipfilter: Interface name must not extend beyond end of buffer
Needs ReviewPublic

Authored by cy on Feb 5 2026, 5:50 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Apr 5, 4:38 PM
Unknown Object (File)
Mar 12 2026, 8:44 PM
Unknown Object (File)
Mar 7 2026, 3:13 AM
Unknown Object (File)
Mar 2 2026, 11:39 PM
Unknown Object (File)
Feb 28 2026, 11:35 AM
Unknown Object (File)
Feb 28 2026, 5:03 AM
Unknown Object (File)
Feb 22 2026, 2:16 PM
Unknown Object (File)
Feb 20 2026, 12:08 PM

Details

Summary

sifpidx (an interface name) cannot extend beyond the end of the
fr_names buffer.

We do the validation for fr_sifpidx here because it is a union that
contains an offset only when fr_sifpidx points to an interface name,
an offset into fr_names. The union is an offset into fr_names in this
case only.

interr_tbl now becomes a static variable outside a function to facilitate
its use by two functins within fil.c

Note that sifpidx is only used in ipf_sync() which implments ipf -y.

Reported by: Ilja Van Sprundel <ivansprundel@ioactive.com>
MFC after: 1 week

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 70439
Build 67322: arc lint + arc unit