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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1365 Actions


    Problem Report Number 1365
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.0647
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1996-12-04 08:00
    Product Standard Sockets (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 4.1.1
    Test Identification Sockets/sendmsg 12
    Problem Summary TSD4U.00170 This test may fail due to memory management logic errors.
    Problem Text
    test purpose 12 of sockets/sendmsg fails (see report output).
    There are two deficiencies:

    o The test case tries to allocate memory of large size
    [f(ssize_t]. This allocation failes because of restricted
    stacksize ("ulimit -s": 16MB). Then the test continues with
    a smaller size and fakes the allocated address by sbrk(0);
    [This is ok because it shouldn't access it anyway!]
    But:
    when succesfully (or errorneous) completing the test,
    then the faked allocated address is being freed by free():
    ==> SIGSEGV and test failure.

    Solution:
    remember whether the memory really was allocated and
    only free it in this case.

    o when initializing "Siovec" the index into the array may
    exceed the valid range:

    #ifdef VSU411_Coding
    Siovec[i+1].iov_base = Siovec[i].iov_base;
    #else
    if(i > 0)
    Siovec[i].iov_base = Siovec[i-1].iov_base;
    #endif
    Test Output
    TEST PURPOSE #12
    If the implementation supports a communications domain
    and a socket type:
    EINVAL in errno and return -1 on a call to ssize_t
    sendmsg(int socket, const struct msghdr *message, int
    flags) when the sum of the iov_len values overflows a
    ssize_t.
    PREP: Read IOV_MAX system configuration
    PREP: Test whether condition can be generated
    PREP: Set up invalid iovec
    INFO: Malloc of 2147483648 bytes failed, trying smaller size
    TEST: AF_UNIX SOCK_STREAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.a003_3
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.a003_3 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.a003_3
    PREP: echo_server: read and echo data
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Bind address ../tmp/uclient.a003_3 to socket
    PREP: Connect to address ../tmp/unix.a003_3
    TEST: Send data with excessive lengths
    TEST: Return value
    TEST: errno value
    CLEANUP: Close socket, kill server
    ERROR: TEST TERMINATED DUE TO SIGSEGV SIGNAL (11)
    12 FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We agree this is a test suite deficiency in the test
    suite version(s) listed.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Test Suite Deficiency (TSD)
    Review Conclusion
    This is an agreed Test Suite Deficiency.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority