[hurd,commited] hurd: Do not take any flag from the CMSG_DATA
Checks
Commit Message
As fixed in 0822e3552a78 ("hurd: Don't pass FD_CLOEXEC in CMSG_DATA"),
senders currently don't have any flag to pass. We shouldn't blindly take
random flags that senders could be erroneously giving us.
---
sysdeps/mach/hurd/recvmsg.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
@@ -201,8 +201,10 @@ __libc_recvmsg (int fd, struct msghdr *message, int flags)
err = reauthenticate (ports[i], &newports[newfds]);
if (err)
goto cleanup;
+ /* We do not currently take any flag from the sender. */
fds[j] = opened_fds[newfds] = _hurd_intern_fd (newports[newfds],
- fds[j] | fd_flags,
+ (fds[j] & 0)
+ | fd_flags,
0);
if (fds[j] == -1)
{