summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorVlad Yasevich <vladislav.yasevich@hp.com>2008-09-19 01:28:27 +0200
committerDavid S. Miller <davem@davemloft.net>2008-09-19 01:28:27 +0200
commitadd52379dde2e5300e2d574b172e62c6cf43b3d3 (patch)
treec322f35beba73d356a44c1e31fed7a5791175eb6 /arch
parentsctp: do not enable peer features if we can't do them. (diff)
downloadlinux-add52379dde2e5300e2d574b172e62c6cf43b3d3.tar.xz
linux-add52379dde2e5300e2d574b172e62c6cf43b3d3.zip
sctp: Fix oops when INIT-ACK indicates that peer doesn't support AUTH
If INIT-ACK is received with SupportedExtensions parameter which indicates that the peer does not support AUTH, the packet will be silently ignore, and sctp_process_init() do cleanup all of the transports in the association. When T1-Init timer is expires, OOPS happen while we try to choose a different init transport. The solution is to only clean up the non-active transports, i.e the ones that the peer added. However, that introduces a problem with sctp_connectx(), because we don't mark the proper state for the transports provided by the user. So, we'll simply mark user-provided transports as ACTIVE. That will allow INIT retransmissions to work properly in the sctp_connectx() context and prevent the crash. Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch')
0 files changed, 0 insertions, 0 deletions