Page MenuHomeFreeBSD

Fix an infinite loop in tcp_tw_2msl_scan() when an INP_TIMEWAIT inp has been destroyed before its tcptw with INVARIANTS undefined.
ClosedPublic

Authored by jch on Sep 7 2017, 3:12 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Jul 19, 2:08 PM
Unknown Object (File)
Jul 5 2025, 11:56 PM
Unknown Object (File)
Jul 5 2025, 11:34 AM
Unknown Object (File)
Jul 4 2025, 7:37 PM
Unknown Object (File)
Jul 3 2025, 5:24 PM
Unknown Object (File)
Jul 3 2025, 4:25 AM
Unknown Object (File)
Jun 18 2025, 12:05 AM
Unknown Object (File)
Jun 17 2025, 9:00 AM

Details

Summary

Fix an infinite loop in tcp_tw_2msl_scan() when an INP_TIMEWAIT inp has been destroyed before its tcptw wint INVARIANTS undefined.

This is a symmetric change of r307551:

A INP_TIMEWAIT inp should not be destroyed before its tcptw, and INVARIANTS
will catch this case. If INVARIANTS is undefined it will emit a log(LOG_ERR)
and avoid a hard to debug infinite loop in tcp_tw_2msl_scan().

Reported by: Ben Rubson, hselasky
Submitted by: hselasky
Tested by: Ben Rubson, jch
MFC after: 1 week
Sponsored by: Verisign, inc

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 11413
Build 11773: arc lint + arc unit