path: root/src/network
diff options
authorRich Felker <>2019-08-07 21:28:37 -0400
committerRich Felker <>2019-08-07 21:28:37 -0400
commit37d6d09ec66d7d571031674586869e9162c13fb1 (patch)
treed7065b252fbe504e957a1db01e882affa8cce21a /src/network
parent7590203c486d9002522019045d34ee3dee0a66f5 (diff)
fix regression in recvmmsg with no timeout
somewhat analogous to commit d0b547dfb5f7678cab6bc39dd736ed6454357ca4, but here the omission of the null timeout check was in the time64 syscall code path. this code is not yet used except on x32.
Diffstat (limited to 'src/network')
1 files changed, 1 insertions, 1 deletions
diff --git a/src/network/recvmmsg.c b/src/network/recvmmsg.c
index 1dc67932..d5dc6b51 100644
--- a/src/network/recvmmsg.c
+++ b/src/network/recvmmsg.c
@@ -22,7 +22,7 @@ int recvmmsg(int fd, struct mmsghdr *msgvec, unsigned int vlen, unsigned int fla
int r = -ENOSYS;
if (SYS_recvmmsg == SYS_recvmmsg_time64 || !IS32BIT(s))
r = __syscall_cp(SYS_recvmmsg_time64, fd, msgvec, vlen, flags,
- ((long long[]){s, ns}));
+ timeout ? ((long long[]){s, ns}) : 0);
if (SYS_recvmmsg == SYS_recvmmsg_time64 || r!=-ENOSYS)
return __syscall_ret(r);
return syscall_cp(SYS_recvmmsg, fd, msgvec, vlen, flags,