Subject: [PATCH] fix MSG_OOB test in caif_seqpkt_recvmsg()

From: Al Viro <[email-masked]>
Date: Sat, 14 Mar 2015 05:22:21 +0000

It should be checking flags, not msg->msg_flags.  It's ->sendmsg()
instances that need to look for that in ->msg_flags, ->recvmsg() ones
(including the other ->recvmsg() instance in that file, as well as
unix_dgram_recvmsg() this one claims to be imitating) check in flags.
Braino had been introduced in commit dcda13 ("caif: Bugfix - use MSG_TRUNC
in receive") back in 2010, so it goes quite a while back.

Cc: [email-masked] # 2.6.35
Signed-off-by: Al Viro <[email-masked]>
---
diff --git a/net/caif/caif_socket.c b/net/caif/caif_socket.c
index 91aa225..1caa161 100644
--- a/net/caif/caif_socket.c
+++ b/net/caif/caif_socket.c
@@ -281,7 +281,7 @@ static int caif_seqpkt_recvmsg(struct socket *sock, struct msghdr *m,
 	int copylen;
 
 	ret = -EOPNOTSUPP;
-	if (m->msg_flags&MSG_OOB)
+	if (flags & MSG_OOB)
 		goto read_error;
 
 	skb = skb_recv_datagram(sk, flags, 0 , &ret);