Use of the information contained in this unapproved document is at your own risk
.Last update: 10 April,2001
1003.1-90 #43
_____________________________________________________________________________
Interpretation Number: (to be assigned by the IEEE)
Topic: creat() "as if" l.193-198
Relevant Sections: 8.2
Classification: No Change required.
Interpretation Request: (Defect Report)
-----------------------
Chapter 8 of POSIX.1 lists the functions required from the C
Standard, required as part of POSIX.1 with the C Language
Binding. Section 8.1 lines 25-29 specify the particular
input/output functions required. Section 8.2 lines 193-198
state that functions from the C standard which "creat[e] a
file shall do so as if they called the creat() function"
with specified flags. Section 8.2.3 lines 341-345 describe
that each function operating on a stream has "underlying
functions" which "share certain traits with the underlying
functions, but [do] not require that there be any relation
between the implementations of the stream function and its
underlying functions."
In lines 193-198, what does "as if" mean from a
standards perspective? Does it mean that it must
behave EXACTLY in the same manner as the specified
creat() call? Specifically, if an additional standard
(such as POSIX.6) imposes additional restrictions on
open(), are they automatically imposed on the file
creation functions, by virtue of this requirement?
(Jeremy Epstein)
IEEE Interpretation for 1003.1-1990 (9945-1:1990):
--------------------------------------------------
If an additional standard (such as POSIX.6)
means to specify that the basic semantics of file
access are to be different depending on which interface
is used, the additional standard must specify the
intended differences.
Rationale for Interpretation:
-----------------------------
None.
_____________________________________________________________________________