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
F149313478: D12267.id33615.diff
Mon, Mar 23, 4:29 PM
F149198327: D12267.id.diff
Sun, Mar 22, 10:52 PM
Unknown Object (File)
Tue, Mar 17, 10:14 AM
Unknown Object (File)
Mon, Mar 16, 1:50 PM
Unknown Object (File)
Mon, Mar 16, 7:19 AM
Unknown Object (File)
Sun, Mar 15, 9:27 PM
Unknown Object (File)
Sun, Mar 15, 9:49 AM
Unknown Object (File)
Sat, Mar 14, 8:03 PM

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

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable