From: Xin Long Date: Sun, 18 Nov 2018 13:59:49 +0000 (+0800) Subject: sctp: not increase stream's incnt before sending addstrm_in request X-Git-Tag: v4.19.4~6 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a886c278ad863c592fc83741fa736fd56635b001;p=platform%2Fkernel%2Flinux-rpi.git sctp: not increase stream's incnt before sending addstrm_in request [ Upstream commit e1e46479847e66f78f79d8c24d5169a5954b3fc2 ] 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 Signed-off-by: Xin Long Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/net/sctp/stream.c b/net/sctp/stream.c index ffb940d..3892e76 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;