Page MenuHomeFreeBSD

D57544.id180038.diff
No OneTemporary

D57544.id180038.diff

diff --git a/tests/sys/kern/unix_passfd_test.c b/tests/sys/kern/unix_passfd_test.c
--- a/tests/sys/kern/unix_passfd_test.c
+++ b/tests/sys/kern/unix_passfd_test.c
@@ -208,13 +208,27 @@
return (val != 0);
}
+static ssize_t
+recvfd_payload_cmsg(int sockfd, void *buf, size_t buflen, struct msghdr *msghdr,
+ int recvmsg_flags)
+{
+ struct iovec iovec;
+
+ iovec.iov_base = buf;
+ iovec.iov_len = buflen;
+
+ msghdr->msg_iov = &iovec;
+ msghdr->msg_iovlen = 1;
+
+ return (recvmsg(sockfd, msghdr, recvmsg_flags));
+}
+
static ssize_t
recvfd_payload(int sockfd, int *recv_fd, void *buf, size_t buflen,
size_t cmsgsz, int recvmsg_flags)
{
struct cmsghdr *cmsghdr;
struct msghdr msghdr;
- struct iovec iovec;
char *message;
ssize_t len;
bool foundcreds;
@@ -226,13 +240,7 @@
msghdr.msg_control = message;
msghdr.msg_controllen = cmsgsz;
- iovec.iov_base = buf;
- iovec.iov_len = buflen;
-
- msghdr.msg_iov = &iovec;
- msghdr.msg_iovlen = 1;
-
- len = recvmsg(sockfd, &msghdr, recvmsg_flags);
+ len = recvfd_payload_cmsg(sockfd, buf, buflen, &msghdr, recvmsg_flags);
ATF_REQUIRE_MSG(len != -1, "recvmsg failed: %s", strerror(errno));
cmsghdr = CMSG_FIRSTHDR(&msghdr);

File Metadata

Mime Type
text/plain
Expires
Fri, Jul 10, 1:59 PM (4 h, 48 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
33919773
Default Alt Text
D57544.id180038.diff (1 KB)

Event Timeline