HomeFreeBSD

pf: Fix panic on overlapping interface names

Description

pf: Fix panic on overlapping interface names

In rare situations[*] it's possible for two different interfaces to have
the same name. This confuses pf, because kifs are indexed by name (which
is assumed to be unique). As a result we can end up trying to
if_rele(NULL), which panics.

Explicitly checking the ifp pointer before if_rele() prevents the panic.
Note pf will likely behave in unexpected ways on the the overlapping
interfaces.

  • Insert an interface in a vnet jail. Rename it to an interface which

exists on the host. Remove the jail. There are now two interfaces with
the same name in the host.

Details

Provenance
kpAuthored on
Parents
rS341358: pf tests: Make pass_block:noalias more robust
Branches
Unknown
Tags
Unknown