• Xin Long's avatar
    sctp: improve the events for sctp stream reset · 556e554a
    Xin Long authored
    [ Upstream commit 2e6dc4d95110becfe0ff4c3d4749c33ea166e9e7 ]
    
    This patch is to improve sctp stream reset events in 4 places:
    
      1. In sctp_process_strreset_outreq(), the flag should always be set with
         SCTP_STREAM_RESET_INCOMING_SSN instead of OUTGOING, as receiver's in
         stream is reset here.
      2. In sctp_process_strreset_outreq(), move up SCTP_STRRESET_ERR_WRONG_SSN
         check, as the reset has to succeed after reconf_timer stops for the
         in stream reset request retransmission.
      3. In sctp_process_strreset_inreq(), no event should be sent, as no in
         or out stream is reset here.
      4. In sctp_process_strreset_resp(), SCTP_STREAM_RESET_INCOMING_SSN or
         OUTGOING event should always be sent for stream reset requests, no
         matter it fails or succeeds to process the request.
    
    Fixes: 81054476 ("sctp: implement receiver-side procedures for the Outgoing SSN Reset Request Parameter")
    Fixes: 16e1a919 ("sctp: implement receiver-side procedures for the Incoming SSN Reset Request Parameter")
    Fixes: 11ae76e6 ("sctp: implement receiver-side procedures for the Reconf Response Parameter")
    Reported-by: default avatarYing Xu <yinxu@redhat.com>
    Signed-off-by: default avatarXin Long <lucien.xin@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    556e554a
Name
Last commit
Last update
..
Kconfig Loading commit data...
Makefile Loading commit data...
associola.c Loading commit data...
auth.c Loading commit data...
bind_addr.c Loading commit data...
chunk.c Loading commit data...
debug.c Loading commit data...
endpointola.c Loading commit data...
input.c Loading commit data...
inqueue.c Loading commit data...
ipv6.c Loading commit data...
objcnt.c Loading commit data...
offload.c Loading commit data...
output.c Loading commit data...
outqueue.c Loading commit data...
primitive.c Loading commit data...
probe.c Loading commit data...
proc.c Loading commit data...
protocol.c Loading commit data...
sctp_diag.c Loading commit data...
sm_make_chunk.c Loading commit data...
sm_sideeffect.c Loading commit data...
sm_statefuns.c Loading commit data...
sm_statetable.c Loading commit data...
socket.c Loading commit data...
stream.c Loading commit data...
sysctl.c Loading commit data...
transport.c Loading commit data...
tsnmap.c Loading commit data...
ulpevent.c Loading commit data...
ulpqueue.c Loading commit data...