HomeFreeBSD

Avoid possible lock leaking.

Description

Avoid possible lock leaking.

After r343619 ipfw uses own locking for packets flow. PULLUP_LEN() macro
is used in ipfw_chk() to make m_pullup(). When m_pullup() fails, it just
returns via goto pullup_failed. There are two places where PULLUP_LEN()
is called with IPFW_PF_RLOCK() held.

Add PULLUP_LEN_LOCKED() macro to use in these places to be able release
the lock, when m_pullup() fails.

Sponsored by: Yandex LLC

Details

Provenance
aeAuthored on
Parents
rS350412: MFC r350371
Branches
Unknown
Tags
Unknown