|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0173 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 0173.
Report 0173 Actions
Problem Report Number 0173 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.0173 Raised 1994-08-07 08:00 Updated 2003-03-13 08:00 Published 1994-07-11 08:00 Product Standard Internationalised System Calls and Libraries (XPG4) Certification Program The Open Brand certification program Test Suite VSX4 version 4.3.4 Test Identification POSIX.os/devclass/i_modem 6, 9 Problem Summary TSD4.173 A delay should be added at the start of the "do_loop" routine in /tset/POSIX.os/devclass/i_modem/i_modem.c. The purpose of this delay is to allow time for the lowering of DTR and RTS on one port to pr... Problem Text
A delay should be added at the start of the "do_loop" routine in
/tset/POSIX.os/devclass/i_modem/i_modem.c. The purpose of this
delay is to allow time for the lowering of DTR and RTS on one port
to propagate and effect a lowering of DCD on the loopback port.
The reason for this is that sufficient delay is not provided at the
start each sub-test to ensure that DCD has been successfully lowered
from the previous test. When the second and third sub-tests start,
DCD is found to be high on the port and the TTY is successfully opened.
However, DCD goes low shortly after the open, as a result of the
previous close. This causes subsequent writes to the TTY to return -1
with an errno of EIO.
To verify that this was the problem, a 100 millisecond delay was inserted
at the start of "do_loop". After this change, all 11 i_modem assertions
succeed. It is interesting to note that at the place where the 100 ms.
delay was inserted, a comment stating "/* parent sleeps and closes */" was
found suggesting that there had originally been a sleep in there that had
been taken out.Test Output
************************************************************************
/tset/POSIX.os/devclass/i_modem/T.i_modem 6 Failed
Test Description:
If general terminal interface supported:
If modem control and CLOCAL are supported, when CLOCAL is clear and
the open flag O_NONBLOCK is clear for the terminal, an open() shall
wait for the modem connection to complete before returning from the
call.
Posix Ref: Component Settable Parameters Assertion 7.1.2.4-52(C)
Test Strategy:
CREATE child process
CHILD process:
OPEN and initialise terminal file and loop back file
SET signal action for SIGHUP to signal catching function
CLEAR CLOCAL in terminal control flags
CLEAR CLOCAL in loop back control flags
CLOSE loop back file descriptor
SLEEP to allow SIGHUP to arrive safely
SLEEP to allow modem lines to do their thing
CREATE process pair
CHILD process:
SLEEP for WAITTIME/2
OPEN and initialise loop back file descriptor
SLEEP for WAITTIME/2
PARENT process:
SET time out for WAITTIME
OPEN terminal file using open(file, O_RDWR)
VERIFY that open() blocked for at least WAITTIME/2 -1 seconds
Test Information:
open() did not wait for modem connection
************************************************************************
************************************************************************
/tset/POSIX.os/devclass/i_modem/T.i_modem 9 Failed
Test Description:
If general terminal interface supported:
If modem control and CLOCAL are supported, when CLOCAL is clear for
the terminal, a creat() shall wait for the modem connection to
complete before returning from the call.
Posix Ref: Component Settable Parameters Assertion 7.1.2.4-53(C)
Test Strategy:
CREATE child process
CHILD process:
OPEN and initialise terminal file and loop back file
SET signal action for SIGHUP to signal catching function
CLEAR CLOCAL in terminal control flags
CLEAR CLOCAL in loop back control flags
CLOSE loop back file descriptor
SLEEP to allow SIGHUP to arrive safely
SLEEP to allow modem lines to do their thing
CREATE process pair
CHILD process:
SLEEP for WAITTIME/2
OPEN and initialise loop back file descriptor
SLEEP for WAITTIME/2
PARENT process:
SET time out for WAITTIME
OPEN terminal file using creat()
VERIFY that creat() blocked for at least WAITTIME/2 -1 seconds
Test Information:
creat() did not wait for modem connection
***********************************************************************Review Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
It is accepted that this is atest suite fault and it is recommended that a
waiver be granted on the grounds of a test suite deficiency.
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 0173
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority