View Issue Details

IDProjectCategoryView StatusLast Update
00008221003.1(2013)/Issue7+TC1System Interfacespublic2019-06-10 08:54
Reportergeoffclare Assigned To 
PrioritynormalSeverityEditorialTypeOmission
Status ClosedResolutionAccepted As Marked 
NameGeoff Clare
OrganizationThe Open Group
User Reference
Sectionsymlink
Page Number2074
Line Number66175
Interp Status---
Final Accepted TextSee 0000822:0002185.
Summary0000822: missing symlink [ENOENT] or [ENOTDIR] error
DescriptionPart of change number XSH/TC1/D5/0630 in TC1 was not applied in
the 2013 edition:

   Change Number: XSH/TC1/D5/0630 [146,428,436]

   On Page: 2058 Line: 65095 Section: symlink()

   In the ERRORS section, change the [ENOENT] error from:

   [ENOENT] A component of path2 does not name an existing file or
   path2 is an empty string.

   to:

   [ENOENT] A component of the path prefix of path2 does not name an
   existing file or path2 is an empty string.

   [ENOENT] or [ENOTDIR]
   The path2 argument contains at least one non-<slash> character and ends
   with one or more trailing <slash> characters. If path2 names an existing
   file, an [ENOENT] error shall not occur.

This last paragraph was not added.
Desired ActionAt line 66175 add after the [ENOENT] error:
[ENOENT] or [ENOTDIR]
The path2 argument contains at least one non-<slash> character and ends with one or more trailing <slash> characters. If path2 names an existing file, an [ENOENT] error shall not occur.

Tagstc2-2008

Relationships

related to 0000436 Closedajosey 2008-TC1 Missing "empty string" text in XSH/TC1/D1/0312 
related to 0000146 Closedajosey 1003.1(2008)/Issue 7 symlinkat failure cases 

Activities

geoffclare

2014-02-10 15:55

manager   bugnote:0002136

A conundrum for the editors: as this is a mismatch between TC1 and the 2013 edition, the change either should not appear in TC2 or should appear as some sort of comment about the 2013 edition rather than a formal TC2 change. Either way the fix should still be made to the full standard when TC2 is merged in (or earlier).

geoffclare

2014-03-14 10:48

manager   bugnote:0002185

Following an email discussion, a problem with the wording "If path2 names an existing file, an [ENOENT] error shall not occur" has been identified. Since adding a trailing slash to a pathname for an existing non-directory file means the pathname does not resolve, this should be "If path2 without the trailing <slash> characters would name an existing file, an [ENOENT] error shall not occur."

An equivalent change also needs to be made for the other functions that have this "[ENOENT] or [ENOTDIR]" error, and it is also missing for the path2 argument to link().

New proposed changes:

At page 622 line 21271 section bind change:
If the pathname names an existing file, an [ENOENT] error shall not occur.
to:
If the pathname without the trailing <slash> characters would name an existing file, an [ENOENT] error shall not occur.


At page 884 line 29607 section fopen and
page 932 line 31432 section freopen change:
If pathname names an existing file, an [ENOENT] error shall not occur.
to:
If pathname without the trailing <slash> characters would name an existing file, an [ENOENT] error shall not occur.


At page 1229 line 40836 section link add after the [ENOENT] error:
[ENOENT] or [ENOTDIR]
The path1 argument names an existing non-directory file, and the path2 argument contains at least one non-<slash> character and ends with one or more trailing <slash> characters. If path2 without the trailing <slash> characters would name an existing file, an [ENOENT] error shall not occur.


At page 1308 line 43264 section mkfifo,
page 1312 line 43423 section mknod and
page 1394 line 46111 section open change:
If path names an existing file, an [ENOENT] error shall not occur.
to:
If path without the trailing <slash> characters would name an existing file, an [ENOENT] error shall not occur.


At page 2074 line 66175 section symlink add after the [ENOENT] error:
[ENOENT] or [ENOTDIR]
The path2 argument contains at least one non-<slash> character and ends with one or more trailing <slash> characters. If path2 without the trailing <slash> characters would name an existing file, an [ENOENT] error shall not occur.

Issue History

Date Modified Username Field Change
2014-02-10 15:54 geoffclare New Issue
2014-02-10 15:54 geoffclare Name => Geoff Clare
2014-02-10 15:54 geoffclare Organization => The Open Group
2014-02-10 15:54 geoffclare Section => symlink
2014-02-10 15:54 geoffclare Page Number => 2074
2014-02-10 15:54 geoffclare Line Number => 66175
2014-02-10 15:54 geoffclare Interp Status => ---
2014-02-10 15:55 geoffclare Note Added: 0002136
2014-03-13 12:53 eblake Relationship added related to 0000436
2014-03-13 12:53 eblake Relationship added related to 0000428
2014-03-13 12:54 eblake Relationship deleted related to 0000428
2014-03-13 12:54 eblake Relationship added related to 0000146
2014-03-14 10:48 geoffclare Note Added: 0002185
2014-03-20 15:41 Don Cragun Final Accepted Text => See 0000822:0002185.
2014-03-20 15:41 Don Cragun Status New => Resolved
2014-03-20 15:41 Don Cragun Resolution Open => Accepted As Marked
2014-03-20 15:41 Don Cragun Tag Attached: tc2-2008
2019-06-10 08:54 agadmin Status Resolved => Closed