.
Last update: 1997-05-20
9945-2-6 Class: Editorial defect _____________________________________________________________________________ Topic: dd Relevant Sections: 4.16.4, 2.11.5.4 Defect Report: ----------------------- In Section 4.16.4 - Asynchronous Events {of dd}, the standard states that ``for SIGINT, the dd utility shall write status information to standard error before exiting. It shall take the standard action for all other signals; see 2.11.5.4. [Draft 12 of ISO/IEC 9945-2:1993 (July 1992), p. 261, lines 3202-3203] In this context, what does ``exit'' mean? Does this literally mean the use of the exit() function or does it really mean ``process termination?'' If the exit() function is mandated, then dd contradicts the spirit of Section 2.11.5.4 - Asynchronous Events, and with the behaviour of all other POSIX.2 utilities: the parent process cannot tell that dd died due to a signal. WG15 response for 9945-2:1993 ----------------------------------- The standard states that the "utility shall write status information to standard error before exiting", when the utility receives a SIGINT. While this can possibly be construed to mean "SIGINT causes the utility to write status information before it exits, whenever it does exit", the proper reading of the sentence is "upon receipt of SIGINT, the utility will exit, writing status information before doing so". Additionally, it is possible to read this phrase as requiring the utility to use exit(). The use of the words "before exiting" in this section of the standard does not require the implementation to use exit(). Concerns about the wording of this part of the standard have been forwarded to the Sponsors. Rationale for Interpretation: ----------------------------- None. _____________________________________________________________________________