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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1265 Actions


    Problem Report Number 1265
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.0547
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1999-04-20 08:00
    Product Standard Internationalised System Calls and Libraries Extended (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 5.0.2
    Test Identification base/test-area/write 26
    Problem Summary TSD4U.00271 This test may fail on implementations because the write, writev, or send causing the connection shutdown may not finish before the next write occurs.
    Problem Text
    write 26, writev 71, and send 16 are failing intermittently on our platform

    These intermittent failures are due to a timing dependency in the test
    suite, as follows. (Note that the timestamps in the attached
    explanation do not correspond to the journals above)


    Step Client Socket Server Socket
    SYN
    1 Connect -------------------

    SYN + ACK
    2
    <------------------

    ACK
    3 -------------------> ACCEPT

    ACK + FIN
    4 <------------------- CLOSE (FINWAIT1)

    ACK
    5 --------------------> FINWAIT2

    PUSH
    6 1st WRITE() --------------------> Reject the inbound
    (19:16:59.392965) (19:16:59.396089)
    RESET
    7 (19:16:59.397372) <--------------------


    8 2nd WRITE() getting SIGPIPE
    (19:16:59:401736)



    In this scenario, the second WRITE() is failing EPIPE and getting SIGPIPE
    (as expected) since the RESET of step 7 had come after 4407 msecs. So if
    the second WRITE() of step 8 came to the TCP/IP stack before the RESET of
    step 7, it will get SUCCESSFUL return code as same as the first WRITE()
    which explains the intermittent results.

    Test Output
    10|28 /tset/CAPIbase/fwrite/fwrite26 18:16:20|TC Start, scenario ref 8901-1
    15|28 1.10 1|TCM Start
    400|28 26 1 18:16:21|IC Start
    200|28 1 18:16:21|TP Start
    520|28 1 1006633021 1 1|SPEC1170TESTSUITE CASE 26
    520|28 1 1006633021 1 2|If the implementation supports a communications
    domain
    520|28 1 1006633021 1 3|and a connection-oriented socket type:
    520|28 1 1006633021 1 4|EPIPE in errno and return -1 on a call to ssize_t
    520|28 1 1006633021 1 5|write(int fildes, const void *buf, size_t nbyte)
    when
    520|28 1 1006633021 1 6|fildes refers to a socket that is
    connection-oriented
    520|28 1 1006633021 1 7|and the peer is no longer connected.
    520|28 1 1090519099 1 1|TEST: AF_INET SOCK_STREAM
    520|28 1 1090519099 1 2|PREP: Create test sockaddr_in: address =
    129.40.217.7, port = 4769
    520|28 1 1090519099 2 1|PREP: Wait for server to be ready
    520|28 1 1090519099 2 2|PREP: Create a socket
    520|28 1 1090519099 2 3|PREP: Connect socket to address 129.40.217.7, port
    4769
    520|28 1 1090519099 2 4|PREP: Tell server to close connection
    520|28 1 1090519099 2 5|PREP: Wait for connection to close
    520|28 1 1090519099 2 6|TEST: Write on closed connection
    520|28 1 1090519099 2 7|TEST: Return value
    520|28 1 1090519099 2 8|ERROR: write call succeeded unexpectedly, returned
    5
    520|28 1 1090519099 2 9|CLEANUP: Send SIGTERM to server
    520|28 1 1056964668 1 1|PREP: Server: create socket
    520|28 1 1056964668 1 2|PREP: Server: bind address 129.40.217.7, port 4769
    to socket
    520|28 1 1056964668 1 3|PREP: Server: listen on socket
    520|28 1 1056964668 1 4|PREP: Server: notify client server is ready
    520|28 1 1056964668 1 5|PREP: Server: accept connection
    520|28 1 1056964668 1 6|INFO: Server: accepted connection from address
    129.40.217.7, port 1056
    520|28 1 1056964668 1 7|PREP: close_server: wait for client to be ready
    520|28 1 1056964668 1 8|PREP: close_server: close connection
    520|28 1 1056964668 1 9|PREP: close_server: tell client connection is
    closed
    520|28 1 1056964668 1 10|INFO: Server terminated
    220|28 1 1 18:16:24|FAIL
    410|28 26 1 18:16:24|IC End
    80|28 0 18:16:24|TC End

    10|15 /tset/CAPIbase/fwritev/fwritev71 21:38:50|TC Start, scenario ref
    8888-1
    15|15 1.10 1|TCM Start
    400|15 71 1 21:38:50|IC Start
    200|15 1 21:38:50|TP Start
    520|15 1 385875990 1 1|SPEC1170TESTSUITE CASE 71
    520|15 1 385875990 1 2|If the implementation supports a communications
    domain
    520|15 1 385875990 1 3|and a connection-oriented socket type:
    520|15 1 385875990 1 4|EPIPE in errno and return -1 on a call to ssize_t
    520|15 1 385875990 1 5|writev(int fildes, const struct iovec *iov, int
    iovcnt) when
    520|15 1 385875990 1 6|fildes refers to a socket that is
    connection-oriented
    520|15 1 385875990 1 7|and is no longer connected.
    520|15 1 889192510 1 1|PREP: Allocate and initialize I/O buffers
    520|15 1 889192510 1 2|TEST: AF_INET SOCK_STREAM
    520|15 1 889192510 1 3|PREP: Create test sockaddr_in: address =
    129.40.217.7, port = 62725
    520|15 1 889192510 2 1|PREP: Wait for server to be ready
    520|15 1 889192510 2 2|PREP: Create a socket
    520|15 1 889192510 2 3|PREP: Connect socket to address 129.40.217.7, port
    62725
    520|15 1 889192510 2 4|PREP: Tell server to close connection
    520|15 1 889192510 2 5|PREP: Wait for connection to close
    520|15 1 889192510 2 6|TEST: Write on closed connection
    520|15 1 889192510 2 7|TEST: Return value
    520|15 1 889192510 2 8|ERROR: writev call succeeded unexpectedly, returned
    64
    520|15 1 889192510 2 9|CLEANUP: Send SIGTERM to server
    520|15 1 1811939353 1 1|PREP: Server: create socket
    520|15 1 1811939353 1 2|PREP: Server: bind address 129.40.217.7, port 62725
    to socket
    520|15 1 1811939353 1 3|PREP: Server: listen on socket
    520|15 1 1811939353 1 4|PREP: Server: notify client server is ready
    520|15 1 1811939353 1 5|PREP: Server: accept connection
    520|15 1 1811939353 1 6|INFO: Server: accepted connection from address
    129.40.217.7, port 1072
    520|15 1 1811939353 1 7|PREP: close_server: wait for client to be ready
    520|15 1 1811939353 1 8|PREP: close_server: close connection
    520|15 1 1811939353 1 9|PREP: close_server: tell client connection is
    closed
    520|15 1 1811939353 1 10|INFO: Server terminated
    220|15 1 1 21:38:53|FAIL
    410|15 71 1 21:38:53|IC End
    80|15 0 21:38:53|TC End

    10|6 /tset/CAPIsockets/fsend/fsend1 22:03:39|TC Start, scenario ref 8946-1,
    ICs {16}
    15|6 1.10 1|TCM Start
    400|6 16 1 22:03:40|IC Start
    200|6 16 22:03:40|TP Start
    520|6 16 1308622910 1 1|SPEC1170TESTSUITE CASE 16
    520|6 16 1308622910 1 2|If the implementation supports a communications
    domain
    520|6 16 1308622910 1 3|and a connection-oriented socket type:
    520|6 16 1308622910 1 4|EPIPE in errno and return -1 on a call to ssize_t
    520|6 16 1308622910 1 5|send(int socket, const void *buffer, size_t length,
    520|6 16 1308622910 1 6|int flags) when the socket is connection oriented
    and
    520|6 16 1308622910 1 7|the peer is closed.
    520|6 16 369098774 1 1|TEST: AF_INET SOCK_STREAM
    520|6 16 369098774 1 2|PREP: Create test sockaddr_in: address =
    129.40.217.7, port = 63765
    520|6 16 369098774 2 1|PREP: Wait for server to be ready
    520|6 16 369098774 2 2|PREP: Create a socket
    520|6 16 369098774 2 3|PREP: Connect socket to address 129.40.217.7, port
    63765
    520|6 16 369098774 2 4|PREP: Tell server to close connection
    520|6 16 369098774 2 5|PREP: Wait for connection to close
    520|6 16 369098774 2 6|TEST: Send on closed connection
    520|6 16 369098774 2 7|TEST: Return value
    520|6 16 369098774 2 8|ERROR: send call succeeded unexpectedly, returned 5
    520|6 16 369098774 2 9|CLEANUP: Send SIGTERM to server
    520|6 16 989855805 1 1|PREP: Server: create socket
    520|6 16 989855805 1 2|PREP: Server: bind address 129.40.217.7, port 63765
    to socket
    520|6 16 989855805 1 3|PREP: Server: listen on socket
    520|6 16 989855805 1 4|PREP: Server: notify client server is ready
    520|6 16 989855805 1 5|PREP: Server: accept connection
    520|6 16 989855805 1 6|INFO: Server: accepted connection from address
    129.40.217.7, port 1138
    520|6 16 989855805 1 7|PREP: close_server: wait for client to be ready
    520|6 16 989855805 1 8|PREP: close_server: close connection
    520|6 16 989855805 1 9|PREP: close_server: tell client connection is closed
    520|6 16 989855805 1 10|INFO: Server terminated
    220|6 16 1 22:03:43|FAIL
    410|6 16 1 22:03:43|IC End
    80|6 0 22:03:43|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