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

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 2430 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 2430.


Report 2430 Actions


    Problem Report Number 2430
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.1260
    Raised 2004-10-29 03:55
    Updated 2004-10-29 21:20
    Published 2004-10-29 21:20
    Product Standard Internationalised System Calls and Libraries Extended V3 (UNIX 03)
    Certification Program The Open Brand certification program
    Test Suite VSU version 5.2.5
    Test Identification CAPI.os/sockets/recv 2
    CAPI.os/sockets/recvfrom 4
    CAPI.os/sockets/recvmsg 7
    Specification Base Definitions Issue 6
    Problem Summary Tests expect parts of two records to be received in one call to revc().
    Problem Text The specification says that the SOCK_SEQPACKET socket type is similar to
    the SOCK_STREAM type, and is also connection-oriented. The only
    difference between these types is that record boundaries are maintained
    using the SOCK_SEQPACKET type. A record can be sent using one or more
    output operations and received using one or more input operations, but a
    single operation never transfers parts of more than one record. Record
    boundaries are visible to the receiver via the MSG_EOR flag in the
    received message flags returned by the recvmsg() function. It is
    protocol-specific whether a maximum record size is imposed.

    Specifically, "a single operation never transfers parts of more than one
    record". The test is clearly expecting parts of two records to be
    received using one recv() call.
    Test Output
    ****************************************************************************************************************
    /tset/CAPI.os/sockets/recv/T.recv 2 Failed

    Test Description:
    Base Conditional Conformance
    If the implementation supports a communications domain and a
    connection-oriented socket type:
    A call to ssize_t recv(int socket, void *buffer, size_t length, int
    flags) when MSG_WAITALL is set in flags shall block until the full
    amount of data requested can be returned.

    Test Information:
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 192.29.85.73, port = 4317
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 192.29.85.73, port 4317
    PREP: Send test data
    PREP: Send more test data which will be echoed after a delay
    TEST: Receive blocks until both messages 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.XJaOsZ
    PREP: Server: create socket
    PREP: Server: bind address 192.29.85.73, port 4317 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 192.29.85.73,
    port 33022
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    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.YJaOsZ to socket
    PREP: Connect to address ../tmp/unix.XJaOsZ
    PREP: Send test data
    PREP: Send more test data which will be echoed after a delay
    TEST: Receive blocks until message received
    TEST: Return value
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_SEQPACKET
    PREP: Create test sockaddr_un: path = ../tmp/unix.ZJaOsZ
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.XJaOsZ 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.YJaOsZ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    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.0JaOsZ to socket
    PREP: Connect to address ../tmp/unix.ZJaOsZ
    PREP: Send test data
    PREP: Send more test data which will be echoed after a delay
    TEST: Receive blocks until message received
    TEST: Return value
    ERROR: recv returned 11, expected 22
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.ZJaOsZ 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.0JaOsZ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated


    ****************************************************************************************************************


    ****************************************************************************************************************
    /tset/CAPI.os/sockets/recvfrom/T.recvfrom 4 Failed

    Test Description:
    Base Conditional Conformance
    If the implementation supports a communications domain and a
    connection-oriented socket type:
    A call to ssize_t recvfrom(int socket, void *buffer, size_t length,
    int flags, struct sockaddr *address, socklen_t *address_len) when
    MSG_WAITALL is set in flags shall block until the full amount of
    data
    requested can be returned.

    Test Information:
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 192.29.85.73, port = 3593
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 192.29.85.73, port 3593
    PREP: Send test data
    PREP: Send more test data which will be echoed after a delay
    TEST: Receive blocks until both messages 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.luaGLZ
    PREP: Server: create socket
    PREP: Server: bind address 192.29.85.73, port 3593 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 192.29.85.73,
    port 33033
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    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.muaGLZ to socket
    PREP: Connect to address ../tmp/unix.luaGLZ
    PREP: Send test data
    PREP: Send more test data which will be echoed after a short delay
    TEST: Receive blocks until both messages received
    TEST: Return value
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_SEQPACKET
    PREP: Create test sockaddr_un: path = ../tmp/unix.nuaGLZ
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.luaGLZ 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.muaGLZ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    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.ouaGLZ to socket
    PREP: Connect to address ../tmp/unix.nuaGLZ
    PREP: Send test data
    PREP: Send more test data which will be echoed after a short delay
    TEST: Receive blocks until both messages received
    TEST: Return value
    ERROR: recvfrom returned 11, expected 22
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.nuaGLZ 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.ouaGLZ
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 11 bytes of data (ABC123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated


    ************************************************************************
    ****************************************


    ****************************************************************************************************************
    /tset/CAPI.os/sockets/recvmsg/T.recvmsg 7 Failed

    Test Description:
    Base Conditional Conformance
    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 MSG_WAITALL is set in flags shall block until the full
    amount of data requested can be returned.

    Test Information:
    TEST: AF_INET SOCK_STREAM
    PREP: Create test sockaddr_in: address = 192.29.85.73, port = 4569
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Connect socket to address 192.29.85.73, port 4569
    PREP: Send test data
    PREP: Send another test data message with a delay before echo
    TEST: rcvmsg blocks until both messages 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.DGaG6Z
    PREP: Server: create socket
    PREP: Server: bind address 192.29.85.73, port 4569 to socket
    PREP: Server: listen on socket
    PREP: Server: notify client server is ready
    PREP: Server: accept connection
    INFO: Server: accepted connection from address 192.29.85.73,
    port 33046
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 25 bytes of data
    (ABCDEFGHIJKLMNOPQ123TEST!)
    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.EGaG6Z to socket
    PREP: Connect to address ../tmp/unix.DGaG6Z
    PREP: Send test data, with a short delay
    PREP: Send another test data message with a short delay before echo
    TEST: rcvmsg blocks until both messages received
    TEST: Return value
    TEST: Duration of blocking
    TEST: Compare data
    CLEANUP: Close socket, kill server
    TEST: AF_UNIX SOCK_SEQPACKET
    PREP: Create test sockaddr_un: path = ../tmp/unix.FGaG6Z
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.DGaG6Z 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.EGaG6Z
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 25 bytes of data
    (ABCDEFGHIJKLMNOPQ123TEST!)
    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.GGaG6Z to socket
    PREP: Connect to address ../tmp/unix.FGaG6Z
    PREP: Send test data, with a short delay
    PREP: Send another test data message with a short delay before echo
    TEST: rcvmsg blocks until both messages received
    TEST: Return value
    ERROR: recvmsg returned 25, expected 50
    CLEANUP: Send SIGTERM to server
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.FGaG6Z 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.GGaG6Z
    PREP: echo_server: read and echo data
    INFO: echo_server: echoed 25 bytes of data
    (ABCDEFGHIJKLMNOPQ123TEST!)
    INFO: Server received signal 15
    INFO: Server terminated


    ****************************************************************************************************************

    Review Information

    Review Type TSMA Review
    Start Date 2004-10-29 03:55
    Last Updated 2004-10-29 20:19
    Completed 2004-10-29 20:19
    Status Complete
    Review Recommendation Test Suite Deficiency (TSD)
    Review Response This is accepted as a fault in the test suite.

    Review Type SA Review
    Start Date 2004-10-29 19:19
    Last Updated 2004-10-29 21:18
    Completed 2004-10-29 21:18
    Status Complete
    Review Resolution Test Suite Deficiency (TSD)
    Review Conclusion A test suite deficiency is granted.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority