mirror of
https://sourceware.org/git/glibc.git
synced 2025-01-05 17:11:06 +00:00
4a30a71401
Handle the SO_TIMESTAMP{NS} similar to recvmsg: for !__ASSUME_TIME64_SYSCALLS it converts the first 32-bit time SO_TIMESTAMP or SO_TIMESTAMPNS and appends it to the control buffer if has extra space or returns MSG_CTRUNC otherwise. The 32-bit time field is kept as-is. Also for !__ASSUME_TIME64_SYSCALLS it limits the maximum number of 'struct mmsghdr *' to IOV_MAX (and also increases the stack size requirement to IOV_MAX times sizeof (socklen_t)). The Linux imposes a similar limit to sendmmsg, so bound the array size on recvmmsg is not unreasonable. And this will be used only on older when building with 32-bit time support. Checked on x86_64-linux-gnu and i686-linux-gnu (on 5.4 and on 4.15 kernel). Reviewed-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com> |
||
---|---|---|
.. | ||
alpha | ||
arm | ||
bsd | ||
i386 | ||
inet | ||
mips | ||
powerpc | ||
sh | ||
sysv/linux | ||
x86_64 | ||
confstr.h | ||
get_child_max.c | ||
getlogin_r.c | ||
getlogin.c | ||
getpagesize.c | ||
grantpt.c | ||
ifreq.c | ||
Implies | ||
make-syscalls.sh | ||
Makefile | ||
s-proto-cancel.S | ||
s-proto.S | ||
setxid.h | ||
sockatmark.c | ||
syscall-template.S | ||
syscall.S | ||
syscalls.list | ||
sysdep.h |