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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1352 Actions


    Problem Report Number 1352
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.0634
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1997-04-28 08:00
    Product Standard Sockets (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 4.1.1
    Test Identification sockets/getsockopt 12-13
    Problem Summary TSD4U.00183 This test may fail because the IUT detects an invalid val_size before an EBADF.
    Problem Text
    On our implementation,
    as part of the syscall interface, the user parameters are copied into
    kernel storage. As part of this copy the option_len field is checked.
    If the length is greater than 5000, an error is generated (the one that
    we got in this case). If the field had been less than 5000, then the
    next thing that is done is to check the address pointed to by
    option_value and if that is not valid storage, an error would be
    generated. Since neither the option_len field nor the option_value
    field are initialized in the testcase the contents of these fields is
    unpredictable and could cause an error to occur at this point.

    Once the parameters are moved into kernel storage, then the socket
    descriptor is checked to verify that it is a valid socket descriptor
    and a failure generated if it is not.

    When a call is made to getsockopt with
    at least 2 errors (the bad descriptor, and an uninitialized length
    field) we catch a checked the parameters in a different order
    than was expected. We believe that our order should be acceptable.
    Test Output
    TEST CASE: getsockopt

    TEST PURPOSE #12
    EBADF in errno and return -1 on a call to int
    getsockopt(int socket, int level, int option_name,
    void *option_value, size_t *option_len) when socket is
    not a valid file descriptor.
    PREP: Open & close file to get bad fd
    TEST: Call getsockopt with invalid socket descriptor
    TEST: Return value
    TEST: errno value
    ERROR: getsockopt call failed incorrectly, errno was 158(error not
    defined in XPG4V2) should have been EBADF
    12 FAIL

    TEST PURPOSE #13
    ENOTSOCK in errno and return -1 on a call to int
    getsockopt(int socket, int level, int option_name,
    void *option_value, size_t *option_len) when socket
    does not refer to a socket.
    PREP: Create a regular file
    TEST: Call getsockopt with file descriptor
    TEST: Return value
    TEST: errno value
    ERROR: getsockopt call failed incorrectly, errno was 158(error not
    defined in XPG4V2) should have been ENOTSOCK
    13 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