Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion libc/src/sys/socket/linux/recvmsg.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,11 @@ LLVM_LIBC_FUNCTION(ssize_t, recvmsg,
}

// Unpoison the msghdr, as well as all its components.
MSAN_UNPOISON(msg, sizeof(struct msghdr));
MSAN_UNPOISON(msg->msg_name, msg->msg_namelen);

for (size_t i = 0; i < msg->msg_iovlen; ++i) {
MSAN_UNPOISON(msg->msg_iov->iov_base, msg->msg_iov->iov_len);
MSAN_UNPOISON(msg->msg_iov[i].iov_base, msg->msg_iov[i].iov_len);
}
MSAN_UNPOISON(msg->msg_control, msg->msg_controllen);

Expand Down
Loading