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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1348 Actions


    Problem Report Number 1348
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.0630
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1997-06-12 08:00
    Product Standard Internationalised System Calls and Libraries Extended (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 4.1.1
    Test Identification base/poll 27
    Problem Summary TSD4U.00187 This test may fail on implementations because the client connect() call does not complete after the connection has been placed in the server listen() queue.
    Problem Text
    The call to inet_client(...) fails here, because in our TCP/IP
    implementation not the TCP/IP layer but the sockets layer
    acknowledges connection request by calling the sockets function
    accept().
    Because this call is missing here, the connection requestor
    gets a disconnect event after a configurable wait time from
    the TCP/IP layer. So the child returns from the blocking connect()
    call with the errno set to ECONNREFUSED and exits.
    Although the poll() returns correct with the POLLIN flag set
    in revents, the testcase fails because WAIT_EVENT(CHILD_CONNECTED)
    timed out because the child exited before.

    In our opinion this is a TSD, because for a correct base of testing the
    poll() function either the function call accept() must be added or the
    call inet_client() must be done non-blocking as it is realized
    for testing AF_UNIX and SOCK_STREAM
    (s = unix_client(imp_socks[i].type, CL_BIND | CL_NONBLOCK, &sun3,lenu);).
    Furthermore, if you look at the sockets section, there exists no
    testcase, which checks this behavior as a requirement.
    Test Output
    10|1 /tset/CAPIbase/fpoll/fpoll27 13:51:13|TC Start, scenario ref 3-1, ICs {27}
    15|1 1.10 1|TCM Start
    400|1 27 1 13:51:27|IC Start
    200|1 1 13:51:27|TP Start
    520|1 1 621 1 1|SPEC1170TESTSUITE CASE 27
    520|1 1 621 1 2|If the implementation supports a communications domain
    520|1 1 621 1 3|and a connection-oriented socket type:
    520|1 1 621 1 4|On a call to int poll(struct pollfd fds[], nfds_t
    520|1 1 621 1 5|nfds, int timeout) a socket that is listening for
    520|1 1 621 1 6|connections shall indicate that it is ready for
    520|1 1 621 1 7|reading once connections are available.
    520|1 1 622 1 1|TEST: AF_INET SOCK_STREAM
    520|1 1 622 1 2|PREP: Create test sockaddr_in: address = 139.25.104.156, port = 3905
    520|1 1 623 1 1|PREP: Child: wait for parent
    520|1 1 623 1 2|PREP: Create a socket
    520|1 1 623 1 3|PREP: Connect socket to address 139.25.104.156, port 3905
    520|1 1 623 1 4|ERROR: inet_client: connect failed, errno = 146(ECONNREFUSED - Connection refused)
    520|1 1 622 2 1|PREP: Create socket
    520|1 1 622 2 2|PREP: Bind to socket
    520|1 1 622 2 3|PREP: Call listen for socket
    520|1 1 622 2 4|PREP: Signal child parent is ready
    520|1 1 622 2 5|PREP: Wait for child to connect
    520|1 1 622 2 6|ERROR: Timed out waiting for completion.
    520|1 1 622 2 7|TEST: poll() on a file descriptor with connection indicates ready to read
    520|1 1 622 2 8|CLEANUP: Close sockets, kill child
    520|1 1 622 2 9|TEST: AF_UNIX SOCK_STREAM
    520|1 1 622 2 10|PREP: Create test sockaddr_un: path = ../tmp/unix.a---sn
    520|1 1 622 3 1|PREP: Create socket
    520|1 1 622 3 2|PREP: Bind to socket
    520|1 1 622 3 3|PREP: Call listen for socket
    520|1 1 622 3 4|PREP: Signal child parent is ready
    520|1 1 622 3 5|TEST: poll() on a file descriptor with connection indicates ready to read
    520|1 1 622 3 6|CLEANUP: Close sockets, kill child
    520|1 1 625 1 1|PREP: Child: wait for parent
    520|1 1 625 1 2|PREP: Create a socket
    520|1 1 625 1 3|PREP: Bind address ../tmp/uclient.a---sq to socket
    520|1 1 625 1 4|PREP: Set O_NONBLOCK for socket
    520|1 1 625 1 5|PREP: Connect to address ../tmp/unix.a---sn
    520|1 1 625 1 6|PREP: Child: wait for parent to complete
    220|1 1 2 13:51:48|UNRESOLVED
    410|1 27 1 13:51:48|IC End
    80|1 0 13:51:48|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.

    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