.
Last update: 1997-05-20
9945-1-90 #14 _____________________________________________________________________________ Topic: format of directory entries, use of read/write Relevant Sections: 5.1.1 Classification: No change required. Defect Report: ----------------------- Request (Paul Rabin #10) In 5.1.1 Format of Directory Entries, page 83, line 10: "The internal format of directories is unspecified." In 5.3.1.4 Errors [Open a File], page 90, lines 256-257: "[EISDIR] The named file is a directory, and the oflag argument specifies write or read/write access." Traditional implementations permitted the use of the read() function on directory files, so no error condition is defined in POSIX.1 for this case. May a conforming application open a directory file and read it using the open() and read() functions? WG15 response for ISO/IEC 9945-1:1990 (IEEE Std 1003.1-1990) -------------------------------------------------- Yes, a conforming application can invoke read() on a directory, however, the result of any such read() is unspecified, and may be an error return, including [EISDIR]. Rationale for Interpretation: ----------------------------- Nothing in the standard prevents an application from using the open() and read() functions on a directory, but an application which uses knowledge of a particular implementation's format for directories is using a non-portable extension. Implementations are free to return anything they want from a read() to a directory. For example, read() could always return zero, or -1 with some appropriate errno. _____________________________________________________________________________