Skip to contentSkip to conversation

fix MSG_OOB test in caif_seqpkt_recvmsg()

PATCH In review Al Viro 2 participants 2 messages Mar 14, 2015 – Mar 16, 2015

Subsystems (2)
lore
Share & tools
lore

Al Viro

author
#0 lore raw

PATCH 1/1 fix MSG_OOB test in caif_seqpkt_recvmsg()

	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.

---

net/caif/caif_socket.c +1 -1
index 91aa225..1caa161 100644
@@ -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);
maintainer
#1 lore raw

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

Quoted 8 lines
	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.

Applied and queued up for -stable.