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 DAF402DA75B; Thu, 2 Jul 2026 16:31:41 +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=1783009902; cv=none; b=Ccy1kDzvnonWtHass0lyMsFi1ucNap5rhX/y0XhK2RbgZr7Xj+9RDZQ7VFT1Kr+d/7nfAS9JpbwEGhjtufKJzHh8nHkBndjNQJqnQ5KZl3110+ymFYJ2dnMoQIqkHMBdg0NscLXFxpGO5O/sjliABknxhsMf9QcYji93gCgPQgo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783009902; c=relaxed/simple; bh=Wou23JpbmJp4UBTrhQLOztm1W5PR1252BYNyOI5Ejp0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bXQhoNh91ENPj+Zaj7fLbwovI4OPuzrt65IK+Pe35m0XG2VGKIcUcpY2Gap/KBUZ1YSu5CiX5fLnDS8RtoKNDydLKLZFs1Yau1u91UZiM7CqjfkGXuxw4cLUf4uKw3C/+H/HW2t1WpuFbTilC5iqsyPtksgqipn8gKehjugHW0g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=vs4Tnq5m; 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="vs4Tnq5m" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 516A11F000E9; Thu, 2 Jul 2026 16:31:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linuxfoundation.org; s=korg; t=1783009901; bh=ZcjJvakdQZkB70j80bjzpkGrPNIvfcdUF5yDx2Z2i9s=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=vs4Tnq5mEwB+/nQSdvsL42/oglQ1BsZtoPHx22OwqI6uEyiT+Y2/VCoTGPdcWd80F wHbbbOUwAZFM3Bsl2OKEfgJj536+VhtzITFjUtessQD8kM2g01bxmxWr4K6JzLh12i fabltdy5RsJoy9ukE0xCYbozO1R2G5rcA7P4jbbU= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, stable@kernel.org, Yuan Tan , Yifan Wu , Juefei Pu , Xin Liu , Kuniyuki Iwashima , Jiexun Wang , Ren Wei , Jakub Kicinski , Alexander Martyniuk , Sasha Levin Subject: [PATCH 6.1 035/129] af_unix: Reject SIOCATMARK on non-stream sockets Date: Thu, 2 Jul 2026 18:19:14 +0200 Message-ID: <20260702155112.882090230@linuxfoundation.org> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260702155112.163984240@linuxfoundation.org> References: <20260702155112.163984240@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 6.1-stable review patch. If anyone has any objections, please let me know. ------------------ From: Jiexun Wang commit d119775f2bad827edc28071c061fdd4a91f889a5 upstream. SIOCATMARK reports whether the receive queue is at the urgent mark for MSG_OOB. In AF_UNIX, MSG_OOB is supported only for SOCK_STREAM sockets. SOCK_DGRAM and SOCK_SEQPACKET reject MSG_OOB in sendmsg() and recvmsg(), so they should not support SIOCATMARK either. Return -EOPNOTSUPP for non-stream sockets before checking the receive queue. Fixes: 314001f0bf92 ("af_unix: Add OOB support") Cc: stable@kernel.org Reported-by: Yuan Tan Reported-by: Yifan Wu Reported-by: Juefei Pu Reported-by: Xin Liu Suggested-by: Kuniyuki Iwashima Signed-off-by: Jiexun Wang Signed-off-by: Ren Wei Reviewed-by: Kuniyuki Iwashima Link: https://patch.msgid.link/20260506140825.2987635-1-n05ec@lzu.edu.cn Signed-off-by: Jakub Kicinski Signed-off-by: Alexander Martyniuk Signed-off-by: Sasha Levin --- net/unix/af_unix.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c index f5b215ca76d249..3e5dc698416f09 100644 --- a/net/unix/af_unix.c +++ b/net/unix/af_unix.c @@ -3181,6 +3181,9 @@ static int unix_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg) struct sk_buff *skb; int answ = 0; + if (sk->sk_type != SOCK_STREAM) + return -EOPNOTSUPP; + skb = skb_peek(&sk->sk_receive_queue); if (skb && skb == READ_ONCE(unix_sk(sk)->oob_skb)) answ = 1; -- 2.53.0