|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0356 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 0356.
Report 0356 Actions
Problem Report Number 0356 Submitter's Classification Specification problem State Resolved Resolution Temporary Interpretation (TIN) Problem Resolution ID TIN.X.0008 Raised 1994-11-05 08:00 Updated 2003-03-13 08:00 Published 1994-06-08 08:00 Product Standard Internationalised System Calls and Libraries (XPG4) Certification Program The Open Brand certification program Test Suite VSX4 version 4.3.2 Test Identification POSIX.os/devclass/i_spchars 20,24 Specification System Interfaces and Headers Issue 4 Location in Spec See Problem Text Problem Summary TIN4.008 This is a gray area in POSIX. The referenced POSIX subsection says that setting the value of any of the special characters to _POSIX_VDISABLE turns off its special function. Nothing is said about the ... Problem Text
This is a gray area in POSIX. The referenced POSIX subsection says
that setting the value of any of the special characters to
_POSIX_VDISABLE turns off its special function. Nothing is said about
the function of a related character.
The tests in question turn on IXON and/or IXOFF, then turn off either
the START or STOP character by setting its value to _POSIX_VDISABLE.
Then, they write the other character (the counterpart of START or
STOP), followed by a newline through the loopback. They expect that
the written character will be eaten.
The serial port firmware where this test is failing feels that if
you've turned off START, then STOP shouldn't have any special meaning.
(How would you restart the output?) STOP isn't eaten. And, if STOP
is turned off, then START isn't eaten.
That's why these tests fail when run with some serial port hardware.Test Output
************************************************************************
/tset/POSIX.os/devclass/i_spchars/T.i_spchars 20 Failed
Test Description:
If general terminal interface supported:
When _POSIX_VDISABLE is in effect for the terminal file, and START
and STOP characters can be changed, when the value of START or STOP
is set to the value _POSIX_VDISABLE (obtained from fpathconf()),
then the action associated with that special character does not
occur for any character received.
Posix Ref: Component Terminal Interface Assertion 7.1.1.9-66(C)
Posix Ref: Component FPATHCONF Assertion 5.7.1.2-25(A)
Test Strategy:
OPEN and initialise terminal file and loop back file
CLEAR NOFLSH and set ICANON and ISIG in terminal control flags
SET value of STOP character to _POSIX_VDISABLE
WRITE all non-special characters (last one NL) to loop back file
READ from terminal file
VERIFY that read() read all data written
VERIFY that all other special characters' functions are enabled
SET value of STOP character to original value
SET value of START character to _POSIX_VDISABLE
WRITE all non-special characters (last one NL) to loop back file
READ from terminal file
VERIFY that read() read all data written
VERIFY that all other special characters' functions are enabled
Test Information:
with STOP set to _POSIX_VDISABLE, START character was read
with START set to _POSIX_VDISABLE, STOP character was read
************************************************************************
************************************************************************
/tset/POSIX.os/devclass/i_spchars/T.i_spchars 24 Failed
Test Description:
If general terminal interface supported:
When _POSIX_VDISABLE is in effect for the terminal file, and START
and STOP characters can be changed, when the value of START or STOP
is set to the value _POSIX_VDISABLE (obtained from pathconf()),
then the action associated with that special character does not
occur for any character received.
Posix Ref: Component Terminal Interface Assertion 7.1.1.9-66(C)
Posix Ref: Component PATHCONF Assertion 5.7.1.2-47(A)
Test Strategy:
OPEN and initialise terminal file and loop back file
CLEAR NOFLSH and set ICANON and ISIG in terminal control flags
SET value of STOP character to _POSIX_VDISABLE
WRITE all non-special characters (last one NL) to loop back file
READ from terminal file
VERIFY that read() read all data written
VERIFY that all other special characters' functions are enabled
SET value of STOP character to original value
SET value of START character to _POSIX_VDISABLE
WRITE all non-special characters (last one NL) to loop back file
READ from terminal file
VERIFY that read() read all data written
VERIFY that all other special characters' functions are enabled
Test Information:
with STOP set to _POSIX_VDISABLE, START character was read
with START set to _POSIX_VDISABLE, STOP character was read
************************************************************************Review Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
The X/Open and POSIX.1-1990 specifications both state that "If the value
of one of the changeable special control characters is {_POSIX_VDISABLE},
that function is disabled; that is, no input data will be recognised as the
disabled special character." This could be considered to mean that "only
that function is disabled" and that the other special control characters
remain unchanged. The system under test has taken an alternative
interpretation which suggests that, in the case of START or STOP, the
other character (STOP or START respectively) can also be disabled. An
alternative course of action for the system under test would be to treat
an incoming non-disabled STOP or START as a special character which should
be discarded in the case that the other character (START or STOP) is to be
discarded.
Many systems do not allow the START or STOP characters to be changed or
discarded and any well written application should either discard both
characters or treat them both as special.
As an interpretation, this should be forwarded to the IEEE for a formal
interpretation. Considering the likelihood of minimal impact on applications
it is recommended that a temporary interpretation be granted until the
response from the IEEE is known.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Temporary Interpretation (TIN) Review Conclusion
This is granted as a temporary interpretation and will be
forwarded to the IEEE.
Problem Reporting System Options:
- View Report 0356
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority