Received: by 2002:a25:23cc:0:0:0:0:0 with SMTP id j195csp39145ybj; Fri, 8 May 2020 06:06:09 -0700 (PDT) X-Google-Smtp-Source: APiQypKEmYh4RD5Ji+JD6UcPYP5xm5W8anuBZMvaPTHfRNlKpIPcR/yYMtUPm/fX0rjnsde77iQk X-Received: by 2002:a05:6402:1c07:: with SMTP id ck7mr2147729edb.202.1588943168965; Fri, 08 May 2020 06:06:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588943168; cv=none; d=google.com; s=arc-20160816; b=RrCUsvXRzH7F6Y+pA8fElY0dw3Y/PGH5ipy4gzBx/NQd/gVwcyaNsCh1oC63KhufKb lD7p0qpwiBF8VrAL7DYEVwUR+ASyiF/t0iU1RS7l2KIqUEppMsF7s3nGh9AxC9sGk5v3 xAUo+XO0gyTG5BjLI3faVxM0KUEOXQA+pIkS/Ykw7fGFSFSacWhmNiTNf99+QcGxhM7y evdFaDde6Av+eaHoWHYHh6BVEOwXsne+ueRdEjmgwRtVSNLmsNII5a8Nu/Z63KAEnPeo 16a/0JBzn16cvCBPjbod3VRzcpv+cMPB5WG8ymSjoDCH9YScQG+U+AYMeEPXoBaXj6TM vRbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=gZyE2w/Dn3ZacBX9QlUJ3FoNLu56Fkw56Abc5h8FMhk=; b=f1EyyNr2QN3o+UKgEC82rzF7pXfM5UWP198y6Fe2429oqP4R3GdFawQeUZHrGG+Q7R 1SIhplIxUsttwBOrLo/kfEQqO+0+48j4+CTao2xhVxkjD0LRW0sUfbbvL5wZQiczmy2Z W0nNKGcqbDAOn07dSynbF2hjxpPR1GNM8R3ZdTGMM87IaLlo6RMeYu2Wx9RWjHr8CMLv cEjOeXGjITiUm8yU7+i64G7It11jKrXDhUYcQuunP/XNRAMf6Vkdq6y2OMnQJTatdgWl +//Yw45rCiV0FXL5turtPKDVU2GDPXysQ5WrcsAWMQ/i1T1HHWBjsS6XFU2gLXA3y2oE nryw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Th1bAbe+; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id y11si933302edt.286.2020.05.08.06.05.37; Fri, 08 May 2020 06:06:08 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Th1bAbe+; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729472AbgEHMvv (ORCPT + 99 others); Fri, 8 May 2020 08:51:51 -0400 Received: from mail.kernel.org ([198.145.29.99]:60844 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728823AbgEHMvk (ORCPT ); Fri, 8 May 2020 08:51:40 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 7A6F424966; Fri, 8 May 2020 12:51:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1588942300; bh=CSSG65g2BH3IAonSSiWOlBenGNI6RSP/8pRPZEKLlNw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Th1bAbe+HedMpmEmCj/xtOfKv5cSSh38j+2iC7oZmrQgT5OwC/5ldcRykxKZZuIP9 MRqpvfXbSwfCihg2jnZKC71pzGfYThMYWgoDV4B2qK8q9d9P8XwnmaKw0YG8t2J1pp SFBEeuULb2Ym0z6RDlo0kJkM4MIMDpDEIcmtxWH8= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, =?UTF-8?q?Jere=20Lepp=C3=A4nen?= , Marcelo Ricardo Leitner , "David S. Miller" Subject: [PATCH 4.19 22/32] sctp: Fix SHUTDOWN CTSN Ack in the peer restart case Date: Fri, 8 May 2020 14:35:35 +0200 Message-Id: <20200508123037.944302353@linuxfoundation.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200508123034.886699170@linuxfoundation.org> References: <20200508123034.886699170@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Jere Leppänen commit 12dfd78e3a74825e6f0bc8df7ef9f938fbc6bfe3 upstream. When starting shutdown in sctp_sf_do_dupcook_a(), get the value for SHUTDOWN Cumulative TSN Ack from the new association, which is reconstructed from the cookie, instead of the old association, which the peer doesn't have anymore. Otherwise the SHUTDOWN is either ignored or replied to with an ABORT by the peer because CTSN Ack doesn't match the peer's Initial TSN. Fixes: bdf6fa52f01b ("sctp: handle association restarts when the socket is closed.") Signed-off-by: Jere Leppänen Acked-by: Marcelo Ricardo Leitner Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- net/sctp/sm_make_chunk.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) --- a/net/sctp/sm_make_chunk.c +++ b/net/sctp/sm_make_chunk.c @@ -871,7 +871,11 @@ struct sctp_chunk *sctp_make_shutdown(co struct sctp_chunk *retval; __u32 ctsn; - ctsn = sctp_tsnmap_get_ctsn(&asoc->peer.tsn_map); + if (chunk && chunk->asoc) + ctsn = sctp_tsnmap_get_ctsn(&chunk->asoc->peer.tsn_map); + else + ctsn = sctp_tsnmap_get_ctsn(&asoc->peer.tsn_map); + shut.cum_tsn_ack = htonl(ctsn); retval = sctp_make_control(asoc, SCTP_CID_SHUTDOWN, 0,