| To: | linux-kernel@xxxxxxxxxxxxxxx, netdev@xxxxxxxxxxx |
|---|---|
| Subject: | [PATCH] compat bug in sys_recvmsg, MSG_CMSG_COMPAT check missing |
| From: | Olaf Hering <olh@xxxxxxx> |
| Date: | Sat, 5 Jun 2004 22:43:34 +0200 |
| Sender: | netdev-bounce@xxxxxxxxxxx |
| User-agent: | Mutt und vi sind doch schneller als Notes |
packet_recvmsg() gets the flags from the compat_sys_socketcall(), but it
does not check for the active MSG_CMSG_COMPAT bit. As a result, it
returns -EINVAL and makes the user rather unhappy
diff -purN linux-2.6.7-rc2-bk5.orig/net/packet/af_packet.c
linux-2.6.7-rc2-bk5/net/packet/af_packet.c
--- linux-2.6.7-rc2-bk5.orig/net/packet/af_packet.c 2004-06-05
09:34:48.000000000 +0200
+++ linux-2.6.7-rc2-bk5/net/packet/af_packet.c 2004-06-05 22:32:16.000000000
+0200
@@ -1037,7 +1037,7 @@ static int packet_recvmsg(struct kiocb *
int copied, err;
err = -EINVAL;
- if (flags & ~(MSG_PEEK|MSG_DONTWAIT|MSG_TRUNC))
+ if (flags & ~(MSG_PEEK|MSG_DONTWAIT|MSG_TRUNC|MSG_CMSG_COMPAT))
goto out;
#if 0
--
USB is for mice, FireWire is for men!
sUse lINUX ag, nÃRNBERG
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: [PATCH] compat bug in sys_recvmsg, MSG_CMSG_COMPAT check missing, David S. Miller |
|---|---|
| Next by Date: | Re: [PATCH] compat bug in sys_recvmsg, MSG_CMSG_COMPAT check missing, David S. Miller |
| Previous by Thread: | Dealing with buggy hardware (was: b44 and 4g4g), Pekka Pietikainen |
| Next by Thread: | Re: [PATCH] compat bug in sys_recvmsg, MSG_CMSG_COMPAT check missing, David S. Miller |
| Indexes: | [Date] [Thread] [Top] [All Lists] |