A NOTE has been added to this issue. ====================================================================== https://www.austingroupbugs.net/view.php?id=1929 ====================================================================== Reported By: gleb.smirnoff Assigned To: ajosey ====================================================================== Project: 1003.1(2024)/Issue8 Issue ID: 1929 Category: System Interfaces Type: Error Severity: Editorial Priority: normal Status: Under Review Name: Gleb Smirnoff Organization: User Reference: Section: recv(), recvfrom(), recvmsg() Page Number: 1 Line Number: paragraph on length of the message Interp Status: --- Final Accepted Text: ====================================================================== Date Submitted: 2025-06-11 20:04 UTC Last Modified: 2025-06-30 14:25 UTC ====================================================================== Summary: features of SOCK_SEQPACKET in documentation of certain System Interfaces contradict its definition in the Base Definitions ======================================================================
---------------------------------------------------------------------- (0007217) geoffclare (manager) - 2025-06-30 14:25 https://www.austingroupbugs.net/view.php?id=1929#c7217 ---------------------------------------------------------------------- Suggested changes (reusing wording from XSH 2.10.6) ... On page 1875 line 61902 section recv(), and page 1878 line 61997 section recvfrom(), and page 1881 line 62113 section recvmsg(), change:<blockquote>For message-based sockets, such as [...], the entire message shall be read in a single operation.</blockquote>to:<blockquote>For message-based sockets, such as SOCK_DGRAM [RS]and SOCK_RAW[/RS], the entire message shall be read in a single operation.</blockquote> On page 1875 line 61905 section recv(), and page 1878 line 62000 section recvfrom(), change:<blockquote>For stream-based sockets, such as SOCK_STREAM, message boundaries shall be ignored. In this case, data shall be returned to the user as soon as it becomes available, and no data shall be discarded.</blockquote>to:<blockquote>For stream-based sockets, such as SOCK_STREAM, record boundaries shall be ignored; data sent on a stream-based socket using output operations of one size can be received using input operations of smaller or larger sizes; data shall be returned to the user as soon as it becomes available and no data shall be discarded. For stream-based sockets with maintained record boundaries, such as SOCK_SEQPACKET, a record can be sent using one or more output operations and received using one or more input operations, but a single operation shall never transfer parts of more than one record; in order to differentiate the end of a record from a short read, it is necessary to use the <i>recvmsg</i>() function instead of <i>recv</i>() or <i>recvfrom</i>().</blockquote> On page 1881 line 62117 section recvmsg(), change:<blockquote>For stream-based sockets, such as SOCK_STREAM, message boundaries shall be ignored. In this case, data shall be returned to the user as soon as it becomes available, and no data shall be discarded.</blockquote>to:<blockquote>For stream-based sockets, such as SOCK_STREAM, record boundaries shall be ignored; data sent on a stream-based socket using output operations of one size can be received using input operations of smaller or larger sizes; data shall be returned to the user as soon as it becomes available and no data shall be discarded. For stream-based sockets with maintained record boundaries, such as SOCK_SEQPACKET, a record can be sent using one or more output operations and received using one or more input operations, but a single operation shall never transfer parts of more than one record; if the received data ends on a record boundary, MSG_EOR shall be set in the <i>msg_flags</i> member of the <b>msghdr</b> structure.</blockquote> Issue History Date Modified Username Field Change ====================================================================== 2025-06-11 20:04 gleb.smirnoff New Issue 2025-06-11 20:04 gleb.smirnoff Status New => Under Review 2025-06-11 20:04 gleb.smirnoff Assigned To => ajosey 2025-06-12 08:53 geoffclare Project 1003.1(2004)/Issue 6 => 1003.1(2024)/Issue8 2025-06-30 14:25 geoffclare Note Added: 0007217 ======================================================================
