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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1334 Actions


    Problem Report Number 1334
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.0616
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1997-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 CAPIsockets/sendmsg 12
    Problem Summary TSD4U.00201 This test may fail due to memory management logic errors.
    Problem Text
    In TSD4U.00170, if malloc failed and use sbrk() to create a faked address, free
    this faked allocated address cause SIGSEGV problem. However, this free also
    cause different undefined results because memory corruption.

    If run AF_INET SOCK_STREAM and AF_UNIX SOCK_STREAM both, because first run
    AF_INET SOCK_STREAM and did free(), run AF_UNIX SOCK_STREAM got 2 different
    result.
    1. child socket hang and parent time out cause UNRESOLVED result.
    2. child socket hang, parent timeout and got SIGSEGV, cause FAIL result.

    Beside, the test case may cause DOUBLE free() if it run more than one socket
    type (AF_INET/AF_UNIX SOCK_STREAM/SOCK_DGRAM).

    We did a test, if no this invalid free(), run this test case can get 'PASS'
    result.

    PEC1170TESTSUITE CASE 12
    520|1 12 21115 1 2|If the implementation supports a communications domain
    520|1 12 21115 1 3|and a socket type:
    520|1 12 21115 1 4|EINVAL in errno and return -1 on a call to ssize_t
    520|1 12 21115 1 5|sendmsg(int socket, const struct msghdr *message, int
    520|1 12 21115 1 6|flags) when the sum of the iov_len values overflows a
    520|1 12 21115 1 7|ssize_t.
    520|1 12 21120 1 1|PREP: Read IOV_MAX system configuration
    520|1 12 21120 1 2|PREP: Test whether condition can be generated
    520|1 12 21120 1 3|PREP: Set up invalid iovec
    520|1 12 21120 1 4|INFO: Malloc of 2147483648 bytes failed, trying smaller size
    520|1 12 21120 1 5|TEST: AF_INET SOCK_STREAM
    520|1 12 21120 1 6|PREP: Create test sockaddr_in: address = 129.214.206.5, port
    = 4497
    520|1 12 21121 1 1|PREP: Server: create socket
    520|1 12 21121 1 2|PREP: Server: bind address 129.214.206.5, port 4497 to
    socket
    520|1 12 21121 1 3|PREP: Server: listen on socket
    520|1 12 21121 1 4|PREP: Server: notify client server is ready
    520|1 12 21121 1 5|PREP: Server: accept connection
    520|1 12 21121 1 6|INFO: Server: accepted connection from address
    129.214.206.5, port 1501
    520|1 12 21121 1 7|PREP: echo_server: read and echo data
    520|1 12 21121 1 8|INFO: Server received signal 15
    520|1 12 21121 1 9|INFO: Server terminated
    520|1 12 21120 2 1|PREP: Wait for server to be ready
    520|1 12 21120 2 2|PREP: Create a socket
    520|1 12 21120 2 3|PREP: Connect socket to address 129.214.206.5, port 4497
    520|1 12 21120 2 4|TEST: Send data with excessive lengths
    520|1 12 21120 2 5|TEST: Return value
    520|1 12 21120 2 6|TEST: errno value
    520|1 12 21120 2 7|CLEANUP: Close socket, kill server
    520|1 12 21120 2 8|TEST: AF_UNIX SOCK_STREAM
    520|1 12 21120 2 9|PREP: Create test sockaddr_un: path = ../tmp/unix.a005A0
    520|1 12 21122 1 1|PREP: Server: create socket
    520|1 12 21122 1 2|PREP: Server: bind address ../tmp/unix.a005A0 to socket
    520|1 12 21122 1 3|PREP: Server: listen on socket
    520|1 12 21122 1 4|PREP: Server: notify client ready to accept
    520|1 12 21122 1 5|PREP: Server: accept connection
    520|1 12 21122 1 6|INFO: Server: accepted connection from address
    Test Output
    TEST CASE: sendmsg

    TEST PURPOSE #12
    520|7978 12 8414 1 1|SPEC1170TESTSUITE CASE 12
    520|7978 12 8414 1 2|If the implementation supports a communications domain
    520|7978 12 8414 1 3|and a socket type:
    520|7978 12 8414 1 4|EINVAL in errno and return -1 on a call to ssize_t
    520|7978 12 8414 1 5|sendmsg(int socket, const struct msghdr *message, int
    520|7978 12 8414 1 6|flags) when the sum of the iov_len values overflows a
    520|7978 12 8414 1 7|ssize_t.
    520|7978 12 8528 1 1|PREP: Read IOV_MAX system configuration
    520|7978 12 8528 1 2|PREP: Test whether condition can be generated
    520|7978 12 8528 1 3|PREP: Set up invalid iovec
    520|7978 12 8528 1 4|INFO: Malloc of 2147483648 bytes failed, trying smaller size
    520|7978 12 8528 1 5|TEST: AF_INET SOCK_STREAM
    520|7978 12 8528 1 6|PREP: Create test sockaddr_in: address = 129.214.206.5,
    port = 3305
    520|7978 12 8529 1 1|PREP: Server: create socket
    520|7978 12 8529 1 2|PREP: Server: bind address 129.214.206.5, port 3305 to
    socket
    520|7978 12 8529 1 3|PREP: Server: listen on socket
    520|7978 12 8529 1 4|PREP: Server: notify client server is ready
    520|7978 12 8529 1 5|PREP: Server: accept connection
    520|7978 12 8529 1 6|INFO: Server: accepted connection from address
    129.214.206.5, port 1585
    520|7978 12 8529 1 7|PREP: echo_server: read and echo data
    520|7978 12 8529 1 8|INFO: Server received signal 15
    520|7978 12 8529 1 9|INFO: Server terminated
    520|7978 12 8528 2 1|PREP: Wait for server to be ready
    520|7978 12 8528 2 2|PREP: Create a socket
    520|7978 12 8528 2 3|PREP: Connect socket to address 129.214.206.5, port 3305
    520|7978 12 8528 2 4|TEST: Send data with excessive lengths
    520|7978 12 8528 2 5|TEST: Return value
    520|7978 12 8528 2 6|TEST: errno value
    520|7978 12 8528 2 7|CLEANUP: Close socket, kill server
    520|7978 12 8528 2 8|TEST: AF_UNIX SOCK_STREAM
    520|7978 12 8528 2 9|PREP: Create test sockaddr_un: path = ../tmp/unix.a0025G
    520|7978 12 8530 1 1|PREP: Server: create socket
    520|7978 12 8528 3 1|PREP: Wait for server to be ready
    520|7978 12 8528 3 2|ERROR: Timed out waiting for completion.
    220|7978 12 2 04:44:04|UNRESOLVED


    520|1 12 8446 1 1|SPEC1170TESTSUITE CASE 12
    520|1 12 8446 1 2|If the implementation supports a communications domain
    520|1 12 8446 1 3|and a socket type:
    520|1 12 8446 1 4|EINVAL in errno and return -1 on a call to ssize_t
    520|1 12 8446 1 5|sendmsg(int socket, const struct msghdr *message, int
    520|1 12 8446 1 6|flags) when the sum of the iov_len values overflows a
    520|1 12 8446 1 7|ssize_t.
    520|1 12 8451 1 1|PREP: Read IOV_MAX system configuration
    520|1 12 8451 1 2|PREP: Test whether condition can be generated
    520|1 12 8451 1 3|PREP: Set up invalid iovec
    520|1 12 8451 1 4|INFO: Malloc of 2147483648 bytes failed, trying smaller size
    520|1 12 8451 1 5|TEST: AF_INET SOCK_STREAM
    520|1 12 8451 1 6|PREP: Create test sockaddr_in: address = 129.214.206.5, port
    = 3517
    520|1 12 8452 1 1|PREP: Server: create socket
    520|1 12 8452 1 2|PREP: Server: bind address 129.214.206.5, port 3517 to socket
    520|1 12 8452 1 3|PREP: Server: listen on socket
    520|1 12 8452 1 4|PREP: Server: notify client server is ready
    520|1 12 8452 1 5|PREP: Server: accept connection
    520|1 12 8452 1 6|INFO: Server: accepted connection from address 129.214.206.5,
    port 1312
    520|1 12 8452 1 7|PREP: echo_server: read and echo data
    520|1 12 8452 1 8|INFO: Server received signal 15
    520|1 12 8452 1 9|INFO: Server terminated
    520|1 12 8451 2 1|PREP: Wait for server to be ready
    520|1 12 8451 2 2|PREP: Create a socket
    520|1 12 8451 2 3|PREP: Connect socket to address 129.214.206.5, port 3517
    520|1 12 8451 2 4|TEST: Send data with excessive lengths
    520|1 12 8451 2 5|TEST: Return value
    520|1 12 8451 2 6|TEST: errno value
    520|1 12 8451 2 7|CLEANUP: Close socket, kill server
    520|1 12 8451 2 8|TEST: AF_UNIX SOCK_STREAM
    520|1 12 8451 2 9|PREP: Create test sockaddr_un: path = ../tmp/unix.a00243
    520|1 12 8453 1 1|PREP: Server: create socket
    520|1 12 8451 3 1|PREP: Wait for server to be ready
    520|1 12 8451 3 2|ERROR: Timed out waiting for completion.
    520|1 12 8446 2 1|ERROR: TEST TERMINATED DUE TO SIGSEGV SIGNAL (11)
    220|1 12 1 17:52:52|FAIL
    80|1 0 17:52:52|TC End

    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.

    This IR has the same reason as TSD4U.00170, but returns a different
    result code.

    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