|Anonymous | Login||2021-06-18 07:58 UTC|
|Main | My View | View Issues | Change Log | Docs|
|Viewing Issue Simple Details|
|ID||Category||Severity||Type||Date Submitted||Last Update|
|0000225||[1003.1(2008)/Issue 7] System Interfaces||Objection||Error||2010-03-04 18:23||2013-04-16 13:06|
|Final Accepted Text||Note: 0000405|
|Summary||0000225: ENXIO and 'may fail'|
The standard is inconsistent on when ENXIO, in relation to a request outside the capabilities of a device, is required rather than optional. This text is associated with actions related to read() and write(). After auditing all uses of ENXIO associated with this phrase, the only uses that were marked as 'shall fail' are fseek/fseeko, fsetpos, and pread. The case of pread is already being dealt with in 0000218.
From an application standpoint, the application must already be prepared to deal with an optional error. From an implementation standpoint, relaxing ENXIO to optional has no impact if the situation was already being detected, and eases compliance if it was not. From a conformance test standpoint, it is not easy to write a test that reliably and intentionally requests an action beyond the capability of a device, so there is nothing lost by relaxing the requirement.
Other uses of ENXIO, such as open() failing if an underlying device is not present, should remain as 'shall fail'.
After line 31450 (fseek/fseeko), add a new paragraph:
The fseek() <CX> and fseeko() </CX> functions may fail if:
Then move the existing ENXIO condition at lines 31442-31443 out of the shall fail into the new may fail section, still with CX shading.
[ENXIO] A request was made of a nonexistent device, or the request was outside the capabilities of the device.
After line 31531 (fsetpos), add a new paragraph:
The fsetpos() function may fail if:
Then move the existing ENXIO condition at lines 31527-31528 out of the shall fail into the new may fail section, still with CX shading.
The standard states the current fseek() and fseeko() error conditions , and conforming implementations must conform to this. However, concerns have been raised about this which are being referred to the sponsor.
Notes to the Editor (not part of this interpretation):
Make change suggested by Submitter. This interpretation should be considered in tandem with 0000218
|2010-03-04 18:23||eblake||New Issue|
|2010-03-04 18:23||eblake||Status||New => Under Review|
|2010-03-04 18:23||eblake||Assigned To||=> ajosey|
|2010-03-04 18:23||eblake||Name||=> Eric Blake|
|2010-03-04 18:23||eblake||Organization||=> Red Hat|
|2010-03-04 18:23||eblake||User Reference||=> ebb.ENXIO|
|2010-03-04 18:23||eblake||Section||=> fseek|
|2010-03-04 18:23||eblake||Page Number||=> 938|
|2010-03-04 18:23||eblake||Line Number||=> 31442|
|2010-03-25 15:44||msbrown||Interp Status||=> Pending|
|2010-03-25 15:44||msbrown||Note Added: 0000405|
|2010-03-25 15:44||msbrown||Status||Under Review => Interpretation Required|
|2010-03-25 15:44||msbrown||Resolution||Open => Accepted|
|2010-03-25 15:44||msbrown||Relationship added||related to 0000218|
|2010-03-25 15:45||msbrown||Final Accepted Text||=> Note: 0000405|
|2010-03-25 15:46||msbrown||Relationship added||related to 0000215|
|2010-04-16 10:14||ajosey||Interp Status||Pending => Proposed|
|2010-05-28 14:05||ajosey||Interp Status||Proposed => Approved|
|2010-09-24 11:18||geoffclare||Tag Attached: tc1-2008|
|2013-04-16 13:06||ajosey||Status||Interpretation Required => Closed|
|Mantis 1.1.6[^] Copyright © 2000 - 2008 Mantis Group|