Mike Silbersack 80dd2a81fb Tighten up reset handling in order to make reset attacks as difficult as
possible while maintaining compatibility with the widest range of TCP stacks.

The algorithm is as follows:

---
For connections in the ESTABLISHED state, only resets with
sequence numbers exactly matching last_ack_sent will cause a reset,
all other segments will be silently dropped.

For connections in all other states, a reset anywhere in the window
will cause the connection to be reset.  All other segments will be
silently dropped.
---

The necessity of accepting all in-window resets was discovered
by jayanth and jlemon, both of whom have seen TCP stacks that
will respond to FIN-ACK packets with resets not meeting the
strict last_ack_sent check.

Idea by:        Darren Reed
Reviewed by:    truckman, jlemon, others(?)
2004-04-26 02:56:31 +00:00
..
2004-04-02 17:57:57 +00:00
2003-10-07 17:46:18 +00:00
2003-10-29 15:07:04 +00:00
2003-10-29 15:07:04 +00:00
2004-03-22 16:04:43 +00:00
2002-10-16 22:27:27 +00:00
2003-08-07 18:17:43 +00:00