msg_iovlen is incorrectly typed (according to POSIX) in addition to msg_controllen, but unlike msg_controllen, this wasn't mentioned for msg_iovlen. msg_iovlen being incorrectly typed hasn't been reported as a GCC bug, but there's no point since it is caused by the same underlying issue. Sources: POSIX.1-2017 (<sys/socket.h>), Linux (include/linux/socket.h) Signed-off-by: Alyssa Ross <hi@xxxxxxxxx> --- man2/recv.2 | 13 +++++++++---- man2/send.2 | 13 +++++++++---- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/man2/recv.2 b/man2/recv.2 index 78ae86e52..7c4b70c7a 100644 --- a/man2/recv.2 +++ b/man2/recv.2 @@ -533,13 +533,18 @@ field of the .I msghdr structure should be typed as .IR socklen_t , -but glibc currently types it as +and the +.I msg_iovlen +field should be typed as +.IR int , +but glibc currently types both as .IR size_t . -.\" glibc bug raised 12 Mar 2006 +.\" glibc bug for msg_controllen raised 12 Mar 2006 .\" http://sourceware.org/bugzilla/show_bug.cgi?id=2448 .\" The problem is an underlying kernel issue: the size of the -.\" __kernel_size_t type used to type this field varies -.\" across architectures, but socklen_t is always 32 bits. +.\" __kernel_size_t type used to type these fields varies +.\" across architectures, but socklen_t is always 32 bits, +.\" as (at least with GCC) is int. .PP See .BR recvmmsg (2) diff --git a/man2/send.2 b/man2/send.2 index 0dd35d783..de224b307 100644 --- a/man2/send.2 +++ b/man2/send.2 @@ -441,13 +441,18 @@ field of the .I msghdr structure should be typed as .IR socklen_t , -but glibc currently types it as +and the +.I msg_iovlen +field should be typed as +.IR int , +but glibc currently types both as .IR size_t . -.\" glibc bug raised 12 Mar 2006 +.\" glibc bug for msg_controllen raised 12 Mar 2006 .\" http://sourceware.org/bugzilla/show_bug.cgi?id=2448 .\" The problem is an underlying kernel issue: the size of the -.\" __kernel_size_t type used to type this field varies -.\" across architectures, but socklen_t is always 32 bits. +.\" __kernel_size_t type used to type these fields varies +.\" across architectures, but socklen_t is always 32 bits, +.\" as (at least with GCC) is int. .PP See .BR sendmmsg (2) -- 2.26.2