|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0468 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 0468.
Report 0468 Actions
Problem Report Number 0468 Submitter's Classification Specification problem State Resolved Resolution Rejected (REJ) Problem Resolution ID REJ.X.0087 Raised 1994-08-08 08:00 Updated 2003-03-13 08:00 Published null 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/ioprim/fcntl 5, 6, 7, 8 Problem Summary PG4R.088 The test for the flags returned by fcntl() is insufficient if fcntl() returns flags not specifically required by the POSIX standard. Our implementation of fcntl(F_GETFL) will return O_CREAT, O_EXCL, O... Problem Text
The test for the flags returned by fcntl() is insufficient if fcntl()
returns flags not specifically required by the POSIX standard. Our
implementation of fcntl(F_GETFL) will return O_CREAT, O_EXCL,
O_NOCTTY, and/or O_TRUNC if the flags were specified on the open().
In the example given, fcntl(F_GETFL) returned O_RDWR and O_NONBLOCK as
expected by the test case but it also returned O_CREAT (0200).
The test should be made more portable by not expecting that only
O_CREAT and O_RDWR are returned. Similar problems exist in other
tests. The following tests either fail or are unresolved because
fcntl() does not expect additional flags such as O_CREAT to be
returned:
POSIX.os/ioprim/fcntl/T.fcntl 5 Unresolved
POSIX.os/ioprim/fcntl/T.fcntl 6 Failed
POSIX.os/ioprim/fcntl/T.fcntl 7 Failed
POSIX.os/ioprim/fcntl/T.fcntl 8 FailedTest Output
/tset/POSIX.os/ioprim/fcntl/T.fcntl 6 Failed
Test Description:
A call to fcntl(fildes, F_SETFL, O_NONBLOCK) shall set the file status
flag O_NONBLOCK for fildes.
Posix Ref: Component FCNTL Assertion 6.5.2.2-10(A)
Test Strategy:
OPEN file with (O_CREAT | O_RDWR)
SET file status flags to O_NONBLOCK using fcntl(F_SETFL)
VERIFY fcntl(F_GETFL) returns (O_RDWR | O_NONBLOCK)
CLOSE file and OPEN it again (O_RDWR | O_NONBLOCK | O_APPEND)
SET file status flags to O_NONBLOCK using fcntl(F_SETFL)
VERIFY fcntl(F_GETFL) returns (O_RDWR | O_NONBLOCK)
Test Information:
fcntl(F_SETFL) did not set flags properly, fcntl(F_GETFL) returned
0207, expected 07
fcntl(F_SETFL) did not set flags properly, fcntl(F_GETFL) returned
0207, expected 07Review Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
The behaviour of this implementation is not considered to be compliant with
XPG4. The description of fcntl() in XSH4 states that fcntl(F_GETFL) returns
the `file status flags and file access modes, defined in <fcntl.h>'. In the
description of <fcntl.h> the file status flags are stated to be O_APPEND,
O_NONBLOCK and O_SYNC, and the file access modes to be O_RDONLY, O_RDWR
and O_WRONLY. The implementation is including O_CREAT, which is neither
a status flag nor an access mode, in the return value.
It is recommended that this request be refused.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Rejected (REJ) Review Conclusion
This request is refused.
Problem Reporting System Options:
- View Report 0468
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority