|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 1265 Details
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 EndReview 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:
- View Report 1265
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority