[SCM] Socket Wrapper Repository - branch master updated
Andreas Schneider
asn at samba.org
Tue Jan 21 01:54:16 MST 2014
The branch, master has been updated
via e5df09b cmake: Only build test_sendmsg_recvmsg_fd if we have msg_control.
via b6161d0 src: Fix setting the temp iovec.
from d7e31ed src: Fix build on Solaris.
http://gitweb.samba.org/?p=socket_wrapper.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit e5df09bb2b7aaeef0d3127ad85371eab78702060
Author: Andreas Schneider <asn at samba.org>
Date: Tue Jan 21 09:52:06 2014 +0100
cmake: Only build test_sendmsg_recvmsg_fd if we have msg_control.
commit b6161d0d94822608053de73b12600661daefabc7
Author: Andreas Schneider <asn at samba.org>
Date: Tue Jan 21 09:45:05 2014 +0100
src: Fix setting the temp iovec.
-----------------------------------------------------------------------
Summary of changes:
src/socket_wrapper.c | 18 +++++++++---------
tests/CMakeLists.txt | 7 +++++--
2 files changed, 14 insertions(+), 11 deletions(-)
Changeset truncated at 500 lines:
diff --git a/src/socket_wrapper.c b/src/socket_wrapper.c
index 205d457..2edc8df 100644
--- a/src/socket_wrapper.c
+++ b/src/socket_wrapper.c
@@ -3342,10 +3342,8 @@ static ssize_t swrap_recvmsg(int s, struct msghdr *omsg, int flags)
return libc_recvmsg(s, omsg, flags);
}
- rc = swrap_recvmsg_before(s, si, omsg, &tmp);
- if (rc == -1) {
- return -1;
- }
+ tmp.iov_base = NULL;
+ tmp.iov_len = 0;
ZERO_STRUCT(msg);
msg.msg_name = (struct sockaddr *)&from_addr; /* optional address */
@@ -3358,8 +3356,10 @@ static ssize_t swrap_recvmsg(int s, struct msghdr *omsg, int flags)
msg.msg_flags = omsg->msg_flags; /* flags on received message */
#endif
- tmp.iov_base = omsg->msg_iov;
- tmp.iov_len = omsg->msg_iovlen;
+ rc = swrap_recvmsg_before(s, si, &msg, &tmp);
+ if (rc == -1) {
+ return -1;
+ }
ret = libc_recvmsg(s, &msg, flags);
@@ -3395,6 +3395,9 @@ static ssize_t swrap_sendmsg(int s, const struct msghdr *omsg, int flags)
return libc_sendmsg(s, omsg, flags);
}
+ tmp.iov_base = NULL;
+ tmp.iov_len = 0;
+
ZERO_STRUCT(msg);
msg.msg_name = omsg->msg_name; /* optional address */
msg.msg_namelen = omsg->msg_namelen; /* size of address */
@@ -3406,9 +3409,6 @@ static ssize_t swrap_sendmsg(int s, const struct msghdr *omsg, int flags)
msg.msg_flags = omsg->msg_flags; /* flags on received message */
#endif
- tmp.iov_base = omsg->msg_iov;
- tmp.iov_len = omsg->msg_iovlen;
-
ret = swrap_sendmsg_before(s, si, &msg, &tmp, &un_addr, &to_un, &to, &bcast);
if (ret == -1) return -1;
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index c626c02..53d458c 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -25,8 +25,11 @@ set(SWRAP_TESTS
test_echo_tcp_writev_readv
test_echo_udp_sendto_recvfrom
test_echo_udp_send_recv
- test_echo_udp_sendmsg_recvmsg
- test_sendmsg_recvmsg_fd)
+ test_echo_udp_sendmsg_recvmsg)
+
+if (HAVE_STRUCT_MSGHDR_MSG_CONTROL)
+ set(SWRAP_TESTS ${SWRAP_TESTS} test_sendmsg_recvmsg_fd)
+endif (HAVE_STRUCT_MSGHDR_MSG_CONTROL)
foreach(_SWRAP_TEST ${SWRAP_TESTS})
add_cmocka_test(${_SWRAP_TEST} ${_SWRAP_TEST}.c ${TORTURE_LIBRARY})
--
Socket Wrapper Repository
More information about the samba-cvs
mailing list