[rds-commits] jlbec commits r105 - in trunk: . linux/net/rds
svn-commits@oss.oracle.com
svn-commits at oss.oracle.com
Thu Jun 8 13:14:40 CDT 2006
Author: jlbec
Date: 2006-06-08 13:14:38 -0500 (Thu, 08 Jun 2006)
New Revision: 105
Modified:
trunk/TODO
trunk/linux/net/rds/
trunk/linux/net/rds/recv.c
trunk/linux/net/rds/send.c
Log:
send/recv: No longer accept+ignore unsupported MSG_ flags.
Signed-off-by: Joel Becker <joel.becker at oracle.com>
Modified: trunk/TODO
===================================================================
--- trunk/TODO 2006-06-08 16:29:40 UTC (rev 104)
+++ trunk/TODO 2006-06-08 18:14:38 UTC (rev 105)
@@ -30,6 +30,8 @@
enforce msg_flags in sendmsg and recvmsg
+support MSG_MORE perhaps?
+
Add a stats reporting interface
- export fixed width stats from getsockopt
- generic and per-transport
Property changes on: trunk/linux/net/rds
___________________________________________________________________
Name: svn:ignore
- *.o.cmd
*.ko.cmd
*.ko
*.mod.c
.tmp_versions
.*.o.d
Modules.symvers
+ *.o.cmd
*.ko.cmd
*.ko
*.mod.c
.tmp_versions
.*.o.d
.*.sw?
Modules.symvers
Modified: trunk/linux/net/rds/recv.c
===================================================================
--- trunk/linux/net/rds/recv.c 2006-06-08 16:29:40 UTC (rev 104)
+++ trunk/linux/net/rds/recv.c 2006-06-08 18:14:38 UTC (rev 105)
@@ -211,6 +211,9 @@
/* udp_recvmsg()->sock_recvtimeo() gets away without locking too.. */
timeo = sock_rcvtimeo(sk, nonblock);
+ if (msg_flags & MSG_OOB)
+ goto out;
+
for(;;) {
if (!rds_next_incoming(rs, &inc)) {
if (nonblock) {
@@ -266,6 +269,8 @@
if (inc)
rds_inc_put(inc);
+
+out:
return ret;
}
Modified: trunk/linux/net/rds/send.c
===================================================================
--- trunk/linux/net/rds/send.c 2006-06-08 16:29:40 UTC (rev 104)
+++ trunk/linux/net/rds/send.c 2006-06-08 18:14:38 UTC (rev 105)
@@ -295,6 +295,13 @@
rds_debug(rs, "sendmsg sock %p sk %p len %zu\n", sock, sk,
payload_len);
+ /* Mirror Linux UDP mirror of BSD error message compatibility */
+ /* XXX: Perhaps MSG_MORE someday */
+ if (msg->msg_flags & ~(MSG_DONTWAIT)) {
+ ret = -EOPNOTSUPP;
+ goto out;
+ }
+
if (msg->msg_namelen) {
/* XXX fail non-unicast destination IPs? */
if (msg->msg_namelen < sizeof(*usin) || usin->sin_family != AF_INET ||
More information about the rds-commits
mailing list