1
linux/include/net/sctp
Vlad Yasevich 07d9396771 [SCTP]: Set assoc_id correctly during INIT collision.
During the INIT/COOKIE-ACK collision cases, it's possible to get
into a situation where the association id is not yet set at the time
of the user event generation.  As a result, user events have an
association id set to 0 which will confuse applications.

This happens if we hit case B of duplicate cookie processing.
In the particular example found and provided by Oscar Isaula
<Oscar.Isaula@motorola.com>, flow looks like this:
A				B
---- INIT------->  (lost)
	    <---------INIT------
---- INIT-ACK--->
	    <------ Cookie ECHO

When the Cookie Echo is received, we end up trying to update the
association that was created on A as a result of the (lost) INIT,
but that association doesn't have the ID set yet.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2007-05-04 13:55:27 -07:00
..
command.h [SCTP]: Set assoc_id correctly during INIT collision. 2007-05-04 13:55:27 -07:00
constants.h [SCTP]: Implement SCTP_MAX_BURST socket option. 2007-04-25 22:28:04 -07:00
sctp.h [SCTP]: Re-order SCTP initializations to avoid race with sctp_rcv() 2007-05-04 13:36:30 -07:00
sm.h [SCTP]: Correctly handle unexpected INIT-ACK chunk. 2007-01-23 20:25:46 -08:00
structs.h [SCTP]: Set assoc_id correctly during INIT collision. 2007-05-04 13:55:27 -07:00
tsnmap.h [SCTP]: Annotate tsn_dups. 2006-12-02 21:26:22 -08:00
ulpevent.h [SCTP]: Implement sac_info field in SCTP_ASSOC_CHANGE notification. 2007-04-25 22:28:03 -07:00
ulpqueue.h [SCTP]: Implement SCTP_FRAGMENT_INTERLEAVE socket option 2007-04-25 22:27:59 -07:00
user.h [SCTP]: Implement SCTP_MAX_BURST socket option. 2007-04-25 22:28:04 -07:00