Commit d119775f2bad for kernel

commit d119775f2bad827edc28071c061fdd4a91f889a5
Author: Jiexun Wang <wangjiexun2025@gmail.com>
Date:   Wed May 6 22:08:23 2026 +0800

    af_unix: Reject SIOCATMARK on non-stream sockets

    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 <yuantan098@gmail.com>
    Reported-by: Yifan Wu <yifanwucs@gmail.com>
    Reported-by: Juefei Pu <tomapufckgml@gmail.com>
    Reported-by: Xin Liu <bird@lzu.edu.cn>
    Suggested-by: Kuniyuki Iwashima <kuniyu@google.com>
    Signed-off-by: Jiexun Wang <wangjiexun2025@gmail.com>
    Signed-off-by: Ren Wei <n05ec@lzu.edu.cn>
    Reviewed-by: Kuniyuki Iwashima <kuniyu@google.com>
    Link: https://patch.msgid.link/20260506140825.2987635-1-n05ec@lzu.edu.cn
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>

diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
index e2d787ca3e74..1cbf36ea043b 100644
--- a/net/unix/af_unix.c
+++ b/net/unix/af_unix.c
@@ -3323,6 +3323,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;
+
 			mutex_lock(&u->iolock);

 			skb = skb_peek(&sk->sk_receive_queue);