Austin Group Defect Tracker

Aardvark Mark IV

Viewing Issue Simple Details Jump to Notes ] Issue History ] Print ]
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
Reporter eblake View Status public  
Assigned To ajosey
Priority normal Resolution Accepted  
Status Closed  
Name Eric Blake
Organization Red Hat
User Reference ebb.ENXIO
Section fseek
Page Number 938
Line Number 31442
Interp Status Approved
Final Accepted Text Note: 0000405
Summary 0000225: ENXIO and 'may fail'
Description 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'.
Desired Action 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.
Tags tc1-2008
Attached Files

- Relationships
related to 0000218Closedajosey Inconsistencies in pread() and read() errors 
related to 0000215Closedajosey Inconsistencies in pwrite() and write() errors 

-  Notes
msbrown (manager)
2010-03-25 15:44

Interpretation response
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

- Issue History
Date Modified Username Field Change
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
Powered by Mantis Bugtracker