From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 522B92628D; Sat, 30 May 2026 17:55:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780163739; cv=none; b=cNFa+HinsY+zmMvfjuQOet5OzKyhpaIYaDSysHPlUrTJyfCoYEAGVQEAQy8vOMrIQ1uQtV3BWG3/y/Aa4Bwj6obYxGB/Wj++XBA0wg3uZ6hF+5dgQ8ZbXJVyDtakzBlcJiM8Yd41urFgpcuLZOZr14lifL4BU/ylkigOZIcZ9Ig= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780163739; c=relaxed/simple; bh=r97gX8TtIGr8Le5XC7JbNijP9jospuMJexlsZT4OcHQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Efuro77xlN5rs1WmHWmghCCY0RgRplT+jxwBhBU8gRSG+F0xH7h2dRr/T6q57xsoRhoaojhG9dcRfUM83+2fOZsN9L8W5FijqbK204tdONEwAS/YC2CXl7AaGCDM/MogTbrOokz1zroD1X77C3w6rSwU3dzm+TPLfXrq2eEbWUs= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=IZCWKZDP; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="IZCWKZDP" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 98C2B1F00893; Sat, 30 May 2026 17:55:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linuxfoundation.org; s=korg; t=1780163738; bh=TC+IufGA79wapck1xhiQLd865NN4qS3/F8J11P18M+0=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=IZCWKZDPEkbvLCS4Cz2rrcv40BCoV/1MyW6MSSs0QuBg/zSjVGzw4H1LAbn+grBLf MZqsS5FL5HY1mExlJLJol+3mY/eoKuK7hiBOEj+su/qn0xOU0W6yqItf2NFhD0hX39 diqOojkikbEx7JfHC09hLAdw/1aj+nyRpJddHWGg= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, "Matthieu Baerts (NGI0)" , Shardul Bankar , Jakub Kicinski Subject: [PATCH 5.15 347/776] mptcp: use MPTCP_RST_EMPTCP for ACK HMAC validation failure Date: Sat, 30 May 2026 18:01:01 +0200 Message-ID: <20260530160249.547145093@linuxfoundation.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260530160240.228940103@linuxfoundation.org> References: <20260530160240.228940103@linuxfoundation.org> User-Agent: quilt/0.69 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 5.15-stable review patch. If anyone has any objections, please let me know. ------------------ From: Shardul Bankar commit a6da02d4c00fdda2417e42ad2b762a9209e6cc49 upstream. When HMAC validation fails on a received ACK + MP_JOIN in subflow_syn_recv_sock(), the subflow is reset with reason MPTCP_RST_EPROHIBIT ("Administratively prohibited"). This is incorrect: HMAC validation failure is an MPTCP protocol-level error, not an administrative policy denial. The mirror site on the client, in subflow_finish_connect(), already uses MPTCP_RST_EMPTCP ("MPTCP-specific error") for the same kind of HMAC failure on the SYN/ACK + MP_JOIN. Use the same reason on the server side for symmetry and accuracy. Suggested-by: Matthieu Baerts (NGI0) Fixes: 443041deb5ef ("mptcp: fix NULL pointer in can_accept_new_subflow") Cc: stable@vger.kernel.org Signed-off-by: Shardul Bankar Reviewed-by: Matthieu Baerts (NGI0) Signed-off-by: Matthieu Baerts (NGI0) Link: https://patch.msgid.link/20260501-net-mptcp-misc-fixes-7-1-rc3-v1-2-b70118df778e@kernel.org Signed-off-by: Jakub Kicinski Signed-off-by: Greg Kroah-Hartman --- net/mptcp/subflow.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/net/mptcp/subflow.c +++ b/net/mptcp/subflow.c @@ -787,7 +787,7 @@ create_child: if (!subflow_hmac_valid(req, &mp_opt)) { SUBFLOW_REQ_INC_STATS(req, MPTCP_MIB_JOINACKMAC); - subflow_add_reset_reason(skb, MPTCP_RST_EPROHIBIT); + subflow_add_reset_reason(skb, MPTCP_RST_EMPTCP); goto dispose_child; }