From: Alyssa Ross Date: Fri, 3 Jul 2020 01:25:40 +0000 (+0000) Subject: send.2, recv.2: Add msg_iovlen POSIX note X-Git-Tag: man-pages-5.08~84 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=71d8892776b5b1f220e7fc8f63e066d7e18e3d83;p=thirdparty%2Fman-pages.git send.2, recv.2: Add msg_iovlen POSIX note 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 (), Linux (include/linux/socket.h) Signed-off-by: Alyssa Ross Signed-off-by: Michael Kerrisk --- diff --git a/man2/recv.2 b/man2/recv.2 index 78ae86e52d..7c4b70c7a1 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 0dd35d783e..de224b3076 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)