HomeAbout Us A-Z IndexSearch * Contact Us Register LoginPress Shop

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 1194 Details

Help Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges

This page provides all information on Problem Report 1194.


Report 1194 Actions


    Problem Report Number 1194
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0396
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published null
    Product Standard Internationalised System Calls and Libraries Extended (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 4.1.0
    Test Identification base/read 18, 19, 22
    Problem Summary PG4U.00071 This test may fail on non-ASCII IUTs.
    Problem Text
    This test may fail on non-ASCII IUTs.

    Affected Assertions:

    CAPIbase section:
    fclose # 10
    fread # 18, 19, 22 (already cited above)
    freadv # 42
    fwrite # 14
    fwritev # 45

    CAPIsockets section:
    frecv # 1, 3, 5, 8, 25
    frecvfrom # 1, 2, 3, 5, 7, 10, 27
    frecvmsg # 1, 2, 3, 4, 6, 11, 31
    fshutdown # 1, 2, 3

    These testcases, which all call unix_server, are failing because
    unix_server, as written, is non-portable to a non-ASCII platform.
    This is the same reason as that cited for TSD4U.00124.
    Test Output
    IC Start
    TP Start
    SPEC1170TESTSUITE CASE 10
    If the implementation supports a communications domain
    and a socket type:
    A successful call to int close(int fildes) when fildes
    refers to a socket shall destroy the socket.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 4201
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 4201
    PREP: Zero receive buffer
    PREP: Send test data and receive
    TEST: Close of the socket file descriptor destroys socket
    CLEANUP: Kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.ggDExQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 4201 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1072
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.eCEExQ to socket
    PREP: Connect to address ../tmp/unix.ggDExQ
    PREP: Zero receive buffer
    PREP: Test socket works
    TEST: Close of socket file descriptor destroys socket
    CLEANUP: Kill server
    TEST: AF_INET SOCK_DGRAM
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 4202
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.ggDExQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.eCEExQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 4202
    PREP: Zero receive buffer
    PREP: Send test data and receive
    TEST: Close of the socket file descriptor destroys socket
    CLEANUP: Kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.deaexQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 4202 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1061
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.HhgFxQ to socket
    PREP: Connect to address ../tmp/unix.deaexQ
    PREP: Zero receive buffer
    PREP: Test socket works
    ERROR: recv call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.deaexQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    FAIL
    IC End
    TC End

    IC Start
    TP Start
    SPEC1170TESTSUITE CASE 18
    If the implementation supports a communications domain
    and a connection-oriented socket type:
    A call to ssize_t read(int fildes, void *buf, size_t
    nbyte) when fildes refers to a connected socket shall
    retrieve data from the socket.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 64525
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 64525
    PREP: Zero receive buffer
    PREP: Send test data
    TEST: Data can be read
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.daFdxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 64525 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1077
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.EhBDxQ to socket
    PREP: Connect to address ../tmp/unix.daFdxQ
    PREP: Zero receive buffer
    PREP: Send test data
    TEST: Read test data
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 64526
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.daFdxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.EhBDxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 64526
    PREP: Zero receive buffer
    PREP: Send test data
    TEST: Data can be read
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.aAfcxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 64526 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1063
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.GAHexQ to socket
    PREP: Connect to address ../tmp/unix.aAfcxQ
    PREP: Zero receive buffer
    PREP: Send test data
    TEST: Read test data
    TEST: Return value
    ERROR: read call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.aAfcxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    FAIL
    IC End
    TC End

    IC Start
    Start
    SPEC1170TESTSUITE CASE 19
    If the implementation supports a communications domain
    and a message-based socket type:
    A call to ssize_t read(int fildes, void *buf, size_t
    nbyte) when fildes refers to a message-based socket
    and a message is longer than nbyte bytes shall discard
    the excess data.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 64005
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 64005
    PREP: Zero receive buffer
    PREP: Send test data
    TEST: Read test data in short buffer (6 bytes)
    TEST: Return value
    TEST: Compare data
    PREP: Zero receive buffer
    PREP: Send more test data
    TEST: Read test data
    TEST: Return value
    TEST: Compare data to ensure remainder of first message discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.DhCCxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 64005 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1064
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1064
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.aFADxQ to socket
    PREP: Connect to address ../tmp/unix.DhCCxQ
    PREP: Zero receive buffer
    PREP: Send test data
    TEST: Read test data with short buffer (6 bytes)
    TEST: Return value
    ERROR: read call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.DhCCxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    FAIL
    IC End
    TC End

    IC Start
    TP Start
    SPEC1170TESTSUITE CASE 22
    If the implementation supports a communications domain
    and a socket type:
    A call to ssize_t read(int fildes, void *buf, size_t
    nbyte) when fildes refers to a socket, O_NONBLOCK is
    not set for fildes, and no messages are available at
    the socket shall block until a message arrives.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 62909
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 62909
    PREP: Zero receive buffer
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.HcEbxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 62909 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1032
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.FEEExQ to socket
    PREP: Connect to address ../tmp/unix.HcEbxQ
    PREP: Zero receive buffer
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Return value
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 62910
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.HcEbxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.FEEExQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 62910
    PREP: Zero receive buffer
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.hdAGxQ
    REP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 62910 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1031
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.GggaxQ to socket
    PREP: Connect to address ../tmp/unix.hdAGxQ
    PREP: Zero receive buffer
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Return value
    ERROR: read call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.hdAGxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    FAIL
    IC End
    TC End

    IC Start
    TP Start
    SPEC1170TESTSUITE CASE 42
    If the implementation supports a communications domain
    and a message-based socket type:
    A call to ssize_t readv(int fildes, const struct iovec
    *iov, int iovcnt) when fildes refers to a
    message-based socket and a message is longer than the
    requested number of bytes shall discard the excess
    data.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 6273
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 62737
    PREP: Zero receive buffer
    PREP: Send test data
    TEST: Read test data in short buffer (6 bytes)
    TEST: Return value
    TEST: Compare data
    PREP: Zero receive buffer
    PREP: Zero receive buffer
    PREP: Send more test data
    TEST: Read test data
    TEST: Return value
    TEST: Compare data to ensure remainder of first message discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.EEgExQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 62737 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1067
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1067
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.ccGcxQ to socket
    PREP: Connect to address ../tmp/unix.EEgExQ
    PREP: Zero receive buffer
    PREP: Send test data
    TEST: Read test data with short buffer (6 bytes)
    TEST: Return value
    ERROR: read call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.EEgExQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    FAIL
    IC End

    IC Start
    TP Start
    SPEC1170TESTSUITE CASE 14
    If the implementation supports a communications domain
    and a socket type:
    A call to ssize_t write(int fildes, const void *buf,
    size_t nbyte) when fildes refers to a socket shall
    initiate transmission of a message from the specified
    socket to its peer.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 62729
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 62729
    PREP: Zero receive buffer
    TEST: Write test data
    TEST: Return value
    TEST: Receive test data
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.bBAcxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 62729 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1032
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.fCfbxQ to socket
    PREP: Connect to address ../tmp/unix.bBAcxQ
    PREP: Zero receive buffer
    TEST: Write test data
    TEST: Return value
    TEST: Receive test data
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 62730
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.bBAcxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.fCfbxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 62730
    PREP: Zero receive buffer
    TEST: Write test data
    TEST: Return value
    TEST: Receive test data
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.dccAxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 62730 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1036
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.HgGfxQ to socket
    PREP: Connect to address ../tmp/unix.dccAxQ
    PREP: Zero receive buffer
    TEST: Write test data
    TEST: Return value
    TEST: Receive test data
    ERROR: read call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.dccAxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    FAIL
    IC End
    TC End

    IC Start
    TP Start
    SPEC1170TESTSUITE CASE 45
    If the implementation supports a communications domain
    and a socket type:
    A call to ssize_t writev(int fildes, const struct
    iovec *iov, int iovcnt) when fildes refers to a socket
    shall initiate transmission of a message from the
    specified socket to its peer.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 65293
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 65293 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1094
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 65293
    PREP: Zero receive buffer
    TEST: Write test data
    TEST: Return value
    TEST: Receive test data
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.CDhGxQ
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.gFegxQ to socket
    PREP: Bind address ../tmp/uclient.gFegxQ to socket
    PREP: Connect to address ../tmp/unix.CDhGxQ
    PREP: Zero receive buffer
    TEST: Write test data
    TEST: Return value
    TEST: Receive test data
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 65294
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.CDhGxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.gFegxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 65294
    PREP: Zero receive buffer
    TEST: Write test data
    TEST: Return value
    TEST: Receive test data
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.hCfgxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 65294 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1073
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.gfdaxQ to socket
    PREP: Connect to address ../tmp/unix.hCfgxQ
    PREP: Zero receive buffer
    TEST: Write test data
    TEST: Return value
    TEST: Receive test data
    ERROR: read call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.hCfgxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    FAIL
    IC End
    TC End

    CAPIsockets
    TEST CASE: recv

    TEST PURPOSE #1
    If the implementation supports a communications domain
    and a socket type:
    A successful call to ssize_t recv(int socket, void
    *buffer, size_t length, int flags) shall read data
    from the socket socket, store it in the buffer
    described by buffer and length, and return the number
    of bytes of data stored.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3921
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3921
    PREP: Send test data
    TEST: Receive test data
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.cadBxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3921 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1099
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.gdAgxQ to socket
    PREP: Connect to address ../tmp/unix.cadBxQ
    PREP: Send test data
    TEST: Receive test data
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3922
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.cadBxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.gdAgxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3922
    PREP: Send test data
    TEST: Receive test data
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.AAccxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3922 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1058
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.hdCAxQ to socket
    PREP: Connect to address ../tmp/unix.AAccxQ
    PREP: Send test data
    TEST: Receive test data
    TEST: Return value
    ERROR: recv call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.AAccxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    1 FAIL

    TEST PURPOSE #3
    If the implementation supports a communications domain
    and a message-based socket type:
    A call to ssize_t recv(int socket, void *buffer,
    size_t length, int flags) when socket is a
    message-based socket and the size of the message being
    processed is greater than length shall truncate the
    message to fit into buffer and discard the remainder.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 1909
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 1909
    PREP: Send test data
    TEST: Receive test data in short buffer (6 bytes)
    TEST: Return value
    TEST: Compare data
    PREP: Send more test data
    TEST: Receive test data
    TEST: Return value
    TEST: Compare data to ensure remainder of first message discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.fhAFxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 1909 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1059
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1059
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.ehfbxQ to socket
    PREP: Connect to address ../tmp/unix.fhAFxQ
    PREP: Send test data
    TEST: Receive test data with short buffer (6 bytes)
    TEST: Return value
    ERROR: recv call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.fhAFxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    3 FAIL

    TEST PURPOSE #5
    If the implementation supports a communications domain
    and a socket type:
    A call to ssize_t recv(int socket, void *buffer,
    size_t length, int flags) when flags contains the flag
    MSG_PEEK shall return a copy of the message without
    removing it from the socket or discarding any data
    that will not fit into buffer.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3853
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3853
    PREP: Send test data
    TEST: Receive test data with MSG_PEEK, in short buffer
    TEST: Return value
    TEST: Compare data
    TEST: Receive test data without MSG_PEEK
    TEST: Return value
    TEST: Compare data to ensure none was discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.FAGgxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3853 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1102
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.bbCaxQ to socket
    PREP: Connect to address ../tmp/unix.FAGgxQ
    PREP: Send test data
    TEST: Receive test data with MSG_PEEK and short bufer
    TEST: Return value
    TEST: Compare data
    TEST: Receive test data without MSG_PEEK
    TEST: Compare data to ensure none was discarded
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3854
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.FAGgxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.bbCaxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3854
    PREP: Send test data
    TEST: Receive test data with MSG_PEEK, in short buffer
    TEST: Return value
    TEST: Compare data
    TEST: Receive test data without MSG_PEEK
    TEST: Return value
    TEST: Compare data to ensure none was discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.abfhxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3854 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1060
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.ghHCxQ to socket
    PREP: Connect to address ../tmp/unix.abfhxQ
    PREP: Send test data
    TEST: Receive test data with MSG_PEEK and short bufer
    TEST: Return value
    ERROR: recv call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.abfhxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    5 FAIL

    TEST PURPOSE #8
    If the implementation supports a communications domain
    and a socket type:
    A call to ssize_t recv(int socket, void *buffer,
    size_t length, int flags) when no messages are
    available at the socket and O_NONBLOCK is not set for
    the socket shall block the calling process until a
    message arrives.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 2813
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 2813
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.hAHDxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 2813 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1103
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.BhfhxQ to socket
    PREP: Connect to address ../tmp/unix.hAHDxQ
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Return value
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 2814
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.hAHDxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.BhfhxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 2814
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.GHaGxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 2814 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1061
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.DHCCxQ to socket
    PREP: Connect to address ../tmp/unix.GHaGxQ
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Return value
    ERROR: recv call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.GHaGxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    8 FAIL

    TEST PURPOSE #25
    If the implementation supports a communications domain
    and a message-based socket type:
    A call to ssize_t recv(int socket, void *buffer,
    size_t length, int flags) when MSG_WAITALL is not set
    in flags shall return data only up to the end of the
    first message for a message-based socket.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3513
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3513
    PREP: Send test data
    PREP: Send a second test message
    TEST: Receive test data without MSG_WAITALL
    TEST: Return value, expect only first set of data
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.cGAhxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3513 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1065
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1065
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.FbafxQ to socket
    PREP: Connect to address ../tmp/unix.cGAhxQ
    PREP: Send test data
    PREP: Send a second test message
    PREP: Send test data
    TEST: Receive test data without MSG_WAITALL
    TEST: Return value, expect only first message data
    ERROR: recv call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.cGAhxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    25 FAIL

    TEST CASE: recvfrom

    TEST PURPOSE #1
    If the implementation supports a communications domain
    and a socket type:
    A successful call to ssize_t recvfrom(int socket, void
    *buffer, size_t length, int flags, struct sockaddr
    *address, size_t *address_len) shall read data from
    the socket socket, store it in the buffer described by
    buffer and length, and return the number of bytes of
    data stored.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 1501
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 1501
    PREP: Send test data
    TEST: Receive test data
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.GFbDxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 1501 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1108
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.FADExQ to socket
    PREP: Connect to address ../tmp/unix.GFbDxQ
    PREP: Send test data
    TEST: Receive test data
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 1502
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.GFbDxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.FADExQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 1502
    PREP: Send test data
    TEST: Receive test data
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.hbDexQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 1502 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1066
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.fcEFxQ to socket
    PREP: Connect to address ../tmp/unix.hbDexQ
    PREP: Send test data
    TEST: Receive test data
    TEST: Return value
    ERROR: recvfrom call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.hbDexQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    1 FAIL

    TEST PURPOSE #2
    If the implementation supports a communications domain
    and a connectionless socket type:
    A call to ssize_t recvfrom(int socket, void *buffer,
    size_t length, int flags, struct sockaddr *address,
    size_t *address_len) when address is not a null
    pointer and the protocol provides the source address
    for messages shall store the source address of the
    received message in the sockaddr structure pointed to
    by address and store the length of this address in the
    object pointed to by address_len.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 2473
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 2473
    PREP: Send test data
    TEST: Receive test data
    TEST: Return value
    TEST: Size of returned address
    TEST: Returned address
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.FBfhxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 2473 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1067
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.HGFGxQ to socket
    PREP: Connect to address ../tmp/unix.FBfhxQ
    PREP: Send test data
    TEST: Receive test data
    TEST: Return value
    ERROR: recvfrom call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.FBfhxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    2 FAIL

    TEST PURPOSE #3
    If the implementation supports a communications domain
    and a socket type:
    A call to ssize_t recvfrom(int socket, void *buffer,
    size_t length, int flags, struct sockaddr *address,
    size_t *address_len) when the size of the source
    address is greater than address_len shall truncate the
    the address.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3445
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3445
    PREP: Send test data
    TEST: Receive test data with short length
    TEST: Return value
    TEST: Size of returned address
    ERROR: Returned incorrect length
    Expected >= non-truncated address size (16) and <= structure size (16)
    Received 6
    TEST: Returned address
    TEST: Returned address truncated
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.DfgDxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3445 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1068
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.fHEexQ to socket
    PREP: Connect to address ../tmp/unix.DfgDxQ
    PREP: Send test data
    TEST: Receive test data with short length
    TEST: Return value
    ERROR: recvfrom call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.DfgDxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    3 FAIL

    TEST PURPOSE #5
    If the implementation supports a communications domain
    and a message-based socket type:
    A call to ssize_t recvfrom(int socket, void *buffer,
    size_t length, int flags, struct sockaddr *address,
    size_t *address_len) when socket is a message-based
    socket and the size of the message being processed is
    greater than length shall truncate the message to fit
    into buffer and discard the remainder.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 1433
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 1433
    PREP: Send test data
    TEST: Receive test data in short buffer (6 bytes)
    TEST: Return value
    TEST: Compare data
    PREP: Send more test data
    TEST: Receive test data
    TEST: Return value
    TEST: Compare data to ensure remainder of first message discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.AHaExQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 1433 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1069
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1069
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.ChEgxQ to socket
    PREP: Connect to address ../tmp/unix.AHaExQ
    PREP: Send test data
    TEST: Receive test data with short buffer (6 bytes)
    TEST: Return value
    ERROR: recvfrom call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.AHaExQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    5 FAIL

    TEST PURPOSE #7
    If the implementation supports a communications domain
    and a socket type:
    A call to ssize_t recvfrom(int socket, void *buffer,
    size_t length, int flags, struct sockaddr *address,
    size_t *address_len) when flags contains the flag
    MSG_PEEK shall return a copy of the message without
    removing it from the socket or discarding any data
    that will not fit into buffer.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3377
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3377
    PREP: Send test data
    TEST: Receive test data with MSG_PEEK, in short buffer
    TEST: Return value
    TEST: Compare data
    TEST: Receive test data without MSG_PEEK
    TEST: Return value
    TEST: Compare data to ensure none was discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.cBHgxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3377 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1111
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.bEcdxQ to socket
    PREP: Connect to address ../tmp/unix.cBHgxQ
    PREP: Send test data
    TEST: Receive test data with MSG_PEEK and short bufer
    TEST: Return value
    TEST: Compare data
    TEST: Receive test data without MSG_PEEK
    TEST: Compare data to ensure none was discarded
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3378
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.cBHgxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.bEcdxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3378
    PREP: Send test data
    TEST: Receive test data with MSG_PEEK, in short buffer
    TEST: Return value
    TEST: Compare data
    TEST: Receive test data without MSG_PEEK
    TEST: Return value
    TEST: Compare data to ensure none was discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.GCdcxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3378 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1070
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.aEdcxQ to socket
    PREP: Connect to address ../tmp/unix.GCdcxQ
    PREP: Send test data
    TEST: Receive test data with MSG_PEEK and short bufer
    TEST: Return value
    ERROR: recvfrom call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.GCdcxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    7 FAIL

    TEST PURPOSE #10
    If the implementation supports a communications domain
    and a socket type:
    A call to ssize_t recvfrom(int socket, void *buffer,
    size_t length, int flags, struct sockaddr *address,
    size_t *address_len) when no messages are available at
    the socket and O_NONBLOCK is not set for the socket
    shall block the calling process until a message
    arrives.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 2337
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 2337
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.hEfExQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 2337 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1112
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.AHGbxQ to socket
    PREP: Connect to address ../tmp/unix.hEfExQ
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Return value
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 2338
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.hEfExQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.AHGbxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 2338
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.dcccxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 2338 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1071
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.bCcaxQ to socket
    PREP: Connect to address ../tmp/unix.dcccxQ
    PREP: Send test data, with a short delay
    TEST: Receive blocks until message received
    TEST: Return value
    ERROR: recvfrom call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.dcccxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    10 FAIL

    TEST PURPOSE #27
    If the implementation supports a communications domain
    and a message-based socket type:
    A call to ssize_t recvfrom(int socket, void *buffer,
    size_t length, int flags, struct sockaddr *address,
    size_t *address_len) when MSG_WAITALL is not set in
    flags shall return data only up to the end of the
    first message for a message-based socket.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3037
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3037
    PREP: Send test data
    PREP: Send another test message
    TEST: Receive test data, expect only first message
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.DHcAxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3037 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1075
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is 198.151.241.50, port 1075
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.EdhAxQ to socket
    PREP: Connect to address ../tmp/unix.DHcAxQ
    PREP: Send test data
    PREP: Send another test message
    TEST: Receive test data, except only first message
    TEST: Return value
    ERROR: recvfrom call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.DHcAxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server: echoed 11 bytes of data (ABC123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    27 FAIL

    TEST CASE: recvmsg

    TEST PURPOSE #1
    If the implementation supports a communications domain
    and a socket type:
    A successful call to ssize_t recvmsg(int socket,
    struct msghdr *message, int flags) shall read data
    from the socket socket, scatter the input data into
    the buffers specified by the msg_iov array contained
    in the msghdr structure pointed to by message, and
    return the number of bytes of data stored.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 4981
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 4981
    PREP: Send test data
    TEST: rcvmsg test data
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.HCbGxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 4981 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1117
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.aGCcxQ to socket
    PREP: Connect to address ../tmp/unix.HCbGxQ
    PREP: Send test data
    TEST: rcvmsg for test data
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 4982
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.HCbGxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.aGCcxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 4982
    PREP: Send test data
    TEST: rcvmsg test data
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.hgbBxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 4982 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is 198.151.241.50, port 1076
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.BEDgxQ to socket
    PREP: Connect to address ../tmp/unix.hgbBxQ
    PREP: Send test data
    TEST: rcvmsg for test data
    TEST: Return value
    ERROR: recvmsg call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.hgbBxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    1 FAIL

    TEST PURPOSE #2
    If the implementation supports a communications domain
    and a connectionless socket type:
    A call to ssize_t recvmsg(int socket, struct msghdr
    *message, int flags) when the msg_name member of the
    structure pointed to by message is not a null pointer
    and the socket is unconnected shall store the source
    address of the received message in the object and the
    length of the address in the msg_namelen member.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 1997
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 1997
    PREP: Send test data
    TEST: rcvmsg for test data
    TEST: Return value
    TEST: Size of returned address
    TEST: Returned address
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.HfcexQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 1997 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is 198.151.241.50, port 1077
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.EAcAxQ to socket
    PREP: Connect to address ../tmp/unix.HfcexQ
    PREP: Send test data
    TEST: rcvmsg for test data
    TEST: Return value
    ERROR: recvmsg call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.HfcexQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    2 FAIL

    TEST PURPOSE #3
    If the implementation supports a communications domain
    and a connectionless socket type:
    A call to ssize_t recvmsg(int socket, struct msghdr
    *message, int flags) when the msg_name member of the
    structure pointed to by message is not a null pointer,
    the socket is unconnected, and the source address of
    the received message is too large to fit in the object
    shall truncate the address to fit into the object
    and discard the remainder.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 2969
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 2969
    PREP: Send test data
    TEST: rcvmsg for test data with short length
    TEST: Return value
    TEST: Size of returned address
    ERROR: Returned incorrect length
    Expected >= non-truncated address size (16) and <= structure size (16)
    Received 6
    TEST: Returned address
    TEST: Returned address truncated
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.bDGbxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 2969 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is 198.151.241.50, port 1078
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.CHgexQ to socket
    PREP: Connect to address ../tmp/unix.bDGbxQ
    PREP: Send test data
    TEST: rcvmsg for test data with short length
    TEST: Return value
    ERROR: recvmsg call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.bDGbxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    3 FAIL

    TEST PURPOSE #4
    If the implementation supports a communications domain
    and a message-based socket type:
    A call to ssize_t recvmsg(int socket, struct msghdr
    *message, int flags) when socket is a message-based
    socket and the message being processed is too big to
    fit into the msghdr structure pointed to by message
    shall truncate the message to fit into the structure,
    discard the remainder, and set MSG_TRUNC in the
    msg_flags member of the structure.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3941
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3941
    PREP: Send test data
    TEST: rcvmsg for test data in short buffer (6 bytes)
    TEST: Return value
    TEST: Compare data
    PREP: Send more test data
    TEST: rcvmsg for test data
    TEST: Return value
    TEST: Compare data to ensure remainder of first message discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.fDCExQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3941 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is 198.151.241.50, port 1079
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is 198.151.241.50, port 1079
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.BDAdxQ to socket
    PREP: Connect to address ../tmp/unix.fDCExQ
    PREP: Send test data
    TEST: rcvmsg for test data with short buffer (6 bytes)
    TEST: Return value
    ERROR: recvmsg call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.fDCExQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    4 FAIL

    TEST PURPOSE #6
    If the implementation supports a communications domain
    and a socket type:
    A call to ssize_t recvmsg(int socket, struct msghdr
    *message, int flags) when flags contains MSG_PEEK
    shall return a copy of the message without removing it
    from the socket or discarding any data that will not
    fit into the msghdr structure pointed to by message.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 1929
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 1929
    PREP: Send test data
    TEST: rcvmsg for test data with MSG_PEEK, in short buffer
    TEST: Return value
    TEST: Compare data
    TEST: rcvmsg for test data without MSG_PEEK
    TEST: Return value
    TEST: Compare data to ensure none was discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.CBbGxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 1929 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1119
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.FHHfxQ to socket
    PREP: Connect to address ../tmp/unix.CBbGxQ
    PREP: Send test data
    TEST: rcvmsg for test data with MSG_PEEK and short bufer
    TEST: Return value
    TEST: Compare data
    TEST: rcvmsg for test data without MSG_PEEK
    TEST: Compare data to ensure none was discarded
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 1930
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.CBbGxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.FHHfxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 1930
    PREP: Send test data
    TEST: rcvmsg for test data with MSG_PEEK, in short buffer
    TEST: Return value
    TEST: Compare data
    TEST: rcvmsg for test data without MSG_PEEK
    TEST: Return value
    TEST: Compare data to ensure none was discarded
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.GccExQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 1930 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is 198.151.241.50, port 1080
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.BDadxQ to socket
    PREP: Connect to address ../tmp/unix.GccExQ
    PREP: Send test data
    TEST: rcvmsg for test data with MSG_PEEK and short bufer
    TEST: Return value
    ERROR: recvmsg call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.GccExQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    6 FAIL

    TEST PURPOSE #11
    If the implementation supports a communications domain
    and a connection-oriented socket type:
    A call to ssize_t recvmsg(int socket, struct msghdr
    *message, int flags) when no messages are available at
    the socket and O_NONBLOCK is not set for the socket
    shall block the calling process until a message
    arrives.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 2833
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 2833
    PREP: Send test data, with a short delay
    TEST: rcvmsg blocks until message received
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.BGfBxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 2833 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1121
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.dHbHxQ to socket
    PREP: Connect to address ../tmp/unix.BGfBxQ
    PREP: Send test data, with a short delay
    TEST: rcvmsg blocks until message received
    TEST: Return value
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 2834
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.BGfBxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.dHbHxQ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 2834
    PREP: Send test data, with a short delay
    TEST: rcvmsg blocks until message received
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.fdFExQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 2834 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is 198.151.241.50, port 1081
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.GfhcxQ to socket
    PREP: Connect to address ../tmp/unix.fdFExQ
    PREP: Send test data, with a short delay
    TEST: rcvmsg blocks until message received
    TEST: Return value
    ERROR: recvmsg call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.fdFExQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    11 FAIL

    TEST PURPOSE #31
    If the implementation supports a communications domain
    and a message-based socket type:
    A call to ssize_t recvmsg(int socket, struct msghdr
    *message, int flags) when MSG_WAITALL is not set in
    flags shall return data only up to the end of the
    first message for a message-based socket.
    TEST: AF_INET SOCK_DGRAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 62681
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 62681
    PREP: Send test data
    PREP: Send another test data message
    TEST: rcvmsg test data, expect just first message
    TEST: Return value
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.aDEhxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 62681 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is 198.151.241.50, port 1085
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is 198.151.241.50, port 1085
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.ffEbxQ to socket
    PREP: Connect to address ../tmp/unix.aDEhxQ
    PREP: Send test data
    PREP: Send another test data message
    TEST: rcvmsg test data, expect just first message
    TEST: Return value
    ERROR: recvmsg call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.aDEhxQ to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is ../
    INFO: Server: echoed 25 bytes of data (ABCDEFGHIJKLMNOPQ123TEST!), peer is ../
    INFO: Server received signal 15
    INFO: Server terminated
    31 FAIL

    TEST CASE: shutdown

    TEST PURPOSE #1
    If the implementation supports a communications domain
    and a socket type:
    A successful call to int shutdown(int socket, SHUT_RD)
    shall disable further receive operations on socket and
    return 0.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 3441
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 3441
    TEST: Shutdown socket for reading
    TEST: Return value
    TEST: Receive on shutdown socket
    TEST: Return value
    TEST: send on socket continues to work
    TEST: Return value
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.EHaAxQ
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 3441 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1142
    PREP: sleep_server: wait for parent to complete test
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.aGCexQ to socket
    PREP: Connect to address ../tmp/unix.EHaAxQ
    TEST: Shutdown socket for reading
    TEST: Return value
    TEST: Receive on shutdown socket
    TEST: Return value
    ERROR: recv call failed, errno = 120(EINTR - Interrupted system call)
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.EHaAxQ to socket
    PREP: Server: listen on socket
    PREP: Server: notify client ready to accept
    PREP: Server: accept connection
    INFO: Server: accepted connection from address ../tmp/uclient.aGCexQ
    PREP: sleep_server: wait for parent to complete test
    INFO: Server received signal 15
    INFO: Server terminated
    1 FAIL

    TEST PURPOSE #2
    If the implementation supports a communications domain
    and a socket type:
    A successful call to int shutdown(int socket, SHUT_WR)
    shall disable further send operations on socket and
    return 0.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 4413
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 4413
    TEST: Shutdown socket for writing
    TEST: Return value
    TEST: Send data on shutdown socket
    TEST: Return value
    TEST: errno value
    ERROR: send call failed incorrectly, errno was 120(EINTR - Interrupted system call) should have been EPIPE
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 4413 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1143
    PREP: echo_server: read and echo data
    INFO: Server received signal 15
    INFO: Server terminated
    2 FAIL

    TEST PURPOSE #3
    If the implementation supports a communications domain
    and a socket type:
    A successful call to int shutdown(int socket,
    SHUT_RDWR) shall disable further send and receive
    operations on socket and return 0.
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 198.151.241.50, port = 1429
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 198.151.241.50, port 1429
    TEST: Shutdown socket for writing and reading
    TEST: Return value
    TEST: Send data on shutdown socket
    TEST: Return value
    TEST: errno value
    ERROR: send call failed incorrectly, errno was 120(EINTR - Interrupted system call) should have been EPIPE
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address 198.151.241.50, port 1429 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 198.151.241.50, port 1144
    PREP: echo_server: read and echo data
    INFO: Server received signal 15
    INFO: Server terminated
    3 FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We recommend this request be refused.

    Patch VSU 4.1.0D provides a workaround for these failures. We
    reccommend that the implementation be required to apply this
    patch prior to making a single branding run.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion
    This request is refused.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority