git: 96c524d8b2c9 - main - linux: fix linux_recvmsg() MSG_PEEK flag handling
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 17 Jan 2022 09:35:20 UTC
The branch main has been updated by melifaro:
URL: https://cgit.FreeBSD.org/src/commit/?id=96c524d8b2c9abe3927abf948fbbd73a7cb42c4a
commit 96c524d8b2c9abe3927abf948fbbd73a7cb42c4a
Author: Alexander V. Chernikov <melifaro@FreeBSD.org>
AuthorDate: 2022-01-08 13:44:17 +0000
Commit: Alexander V. Chernikov <melifaro@FreeBSD.org>
CommitDate: 2022-01-17 09:35:15 +0000
linux: fix linux_recvmsg() MSG_PEEK flag handling
Reviewed by: kib
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D33790
---
sys/compat/linux/linux_socket.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/sys/compat/linux/linux_socket.c b/sys/compat/linux/linux_socket.c
index a2b45edf7bdc..d51b9945b434 100644
--- a/sys/compat/linux/linux_socket.c
+++ b/sys/compat/linux/linux_socket.c
@@ -1538,6 +1538,12 @@ linux_recvmsg_common(struct thread *td, l_int s, struct l_msghdr *msghdr,
if (error != 0)
return (error);
+ /*
+ * Pass user-supplied recvmsg() flags in msg_flags field,
+ * following sys_recvmsg() convention.
+ */
+ linux_msghdr.msg_flags = flags;
+
error = linux_to_bsd_msghdr(msg, &linux_msghdr);
if (error != 0)
return (error);