|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 1377 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 1377.
Report 1377 Actions
Problem Report Number 1377 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.0659 Raised 1970-01-01 08:00 Updated 2003-03-13 08:00 Published 1996-09-18 08:00 Product Standard Sockets (UNIX 95) Certification Program The Open Brand certification program Test Suite VSU version 4.1.0 Test Identification Sockets/listen 4 Problem Summary TSD4U.00158 This test fails on implementations where the maximum number of open files is reached because previously opened files are not closed. Problem Text
This test fails to close previously opened file descriptors before attempting
to open new socket file descriptors, thus resulting in the EMFILE errno
because the process exceeded the implementation file descriptor limit.
In our implementation, VSU_LISTEN_LIMIT is 32 and the default per process
maximum file descriptor limit is 64. The test case parent process (acting
as a client) first opens LISTEN_LIMIT+1 sockets to test the listen assertion
for AF_INET SOCK_STREAM socket. After the test for AF_INET SOCK_STREAM,
the parent process does not close the newly created file descriptors. It
then again attempts to create LISTEN_LIMIT+1 sockets for testing the
assertion for AF_UNIX SOCK_STREAM socket and thus exceeds the per process
maximum file descriptor limit.
The test case should close the previously opened socket file descriptors
before attempting to again open LISTEN_LIMIT+1 sockets.Test Output
TEST CASE: listen
TEST PURPOSE #4
If the implementation supports a communications domain
and a connection-oriented socket type and limits the
maximum backlog queue length:
A call to int listen(int socket, int backlog) when
backlog is larger than the implementation's maximum
queue length shall set the length to the maximum
supported value.
PREP: Get VSU_LISTEN_LIMIT configuration variable
INFO: VSU_LISTEN_LIMIT = 32
PREP: Get VSU_CONNECT_TIMEOUT configuration variable
PREP: Determine OPEN_MAX
TEST: AF_INET SOCK_STREAM
PREP: Create test sockaddr_in: address = 129.146.85.212, port = 4489
PREP: Child: create socket
PREP: Child: bind to socket
PREP: Child: listen on socket with backlog of LISTEN_LIMIT+10
PREP: Child: tell parent ready
PREP: Child: wait for parent to complete test
CLEANUP: Child: close socket
PREP: Create LISTEN_LIMIT+1 sockets
PREP: Wait for child to be ready
PREP: Connect LISTEN_LIMIT times to fill queue
TEST: Next connect is rejected
TEST: Return value
TEST: errno value
CLEANUP: Kill child
TEST: AF_UNIX SOCK_STREAM
PREP: Create test sockaddr_un: path = ../tmp/unix.a005L8
PREP: Child: create socket
PREP: Child: bind to socket
PREP: Child: listen on socket with backlog of LISTEN_LIMIT+10
PREP: Child: tell parent ready
PREP: Child: wait for parent to complete test
PREP: Create LISTEN_LIMIT+1 sockets
ERROR: Call to socket # 23 failed, errno = 24(EMFILE - Too many open files)
4 UNRESOLVEDReview 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 1377
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority