HomeFreeBSD

MFC r340073, r341359:

Description

MFC r340073, r341359:

pf: Keep a reference to struct ifnets we're using

Ensure that the struct ifnet we use can't go away until we're done with
it.

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
rS344962: MFC r341360:
Branches
Unknown
Tags
Unknown