diff options
author | Xin Long <lucien.xin@gmail.com> | 2018-11-18 21:59:49 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-11-19 14:46:32 -0800 |
commit | e1e46479847e66f78f79d8c24d5169a5954b3fc2 (patch) | |
tree | 0a0a8900d09437cbaabe97c77100b29a7cc52bd9 /net/sctp | |
parent | 69fec325a64383667b8a35df5d48d6ce52fb2782 (diff) |
sctp: not increase stream's incnt before sending addstrm_in request
Different from processing the addstrm_out request, The receiver handles
an addstrm_in request by sending back an addstrm_out request to the
sender who will increase its stream's in and incnt later.
Now stream->incnt has been increased since it sent out the addstrm_in
request in sctp_send_add_streams(), with the wrong stream->incnt will
even cause crash when copying stream info from the old stream's in to
the new one's in sctp_process_strreset_addstrm_out().
This patch is to fix it by simply removing the stream->incnt change
from sctp_send_add_streams().
Fixes: 242bd2d519d7 ("sctp: implement sender-side procedures for Add Incoming/Outgoing Streams Request Parameter")
Reported-by: Jianwen Ji <jiji@redhat.com>
Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sctp')
-rw-r--r-- | net/sctp/stream.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/net/sctp/stream.c b/net/sctp/stream.c index ffb940d3b57c..3892e7630f3a 100644 --- a/net/sctp/stream.c +++ b/net/sctp/stream.c @@ -535,7 +535,6 @@ int sctp_send_add_streams(struct sctp_association *asoc, goto out; } - stream->incnt = incnt; stream->outcnt = outcnt; asoc->strreset_outstanding = !!out + !!in; |