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
0001522 [1003.1(2016/18)/Issue7+TC2] System Interfaces Objection Error 2021-10-08 14:31 2022-02-04 10:04
Reporter geoffclare View Status public  
Assigned To
Priority normal Resolution Accepted  
Status Applied  
Name Geoff Clare
Organization The Open Group
User Reference
Section mkdir()
Page Number 1316
Line Number 43790
Interp Status ---
Final Accepted Text
Summary 0001522: mkdir() and S_ISVTX
Description The mkdir() description states:
When bits in mode other than the file permission bits are set, the meaning of these additional bits is implementation-defined.
This is old POSIX.1-199x text from before the merge with SUS, after which the S_ISVTX bit has a specified meaning for directories (when the XSI option is supported), as per the <sys/stat.h> description of S_ISVTX: "On directories, restricted deletion flag". This needs to be accounted for in the mkdir() description.

The umask() page also has a similar problem.
Desired Action On page 1316 line 43787 section mkdir(), change:
The mkdir() function shall create a new directory with name path. The file permission bits of the new directory shall be initialized from mode. These file permission bits of the mode argument shall be modified by the process' file creation mask.

When bits in mode other than the file permission bits are set, the meaning of these additional bits is implementation-defined.
to:
The mkdir() function shall create a new directory with name path. The file permission bits [XSI]and S_ISVTX bit[/XSI]of the new directory shall be initialized from mode. The file permission bits of the mode argument shall be modified by the file creation mask of the process.

When bits in mode other than the file permission bits [XSI] and S_ISVTX[/XSI] are set, the meaning of these additional bits is implementation-defined.

On page 2189 line 70020 section umask(), change:
Only the file permission bits of cmask (see <sys/stat.h>) are used; the meaning of the other bits is implementation-defined.
to:
Only the file permission bits of cmask (see <sys/stat.h>) shall be used; [XSI]the S_ISVTX bit shall be ignored, and[/XSI] the meaning of the other bits is implementation-defined.

On page 2189 line 70028 section umask(), change:
Bit positions that are set in cmask are cleared in the mode of the created file.
to:
Permission bit positions that are set in cmask are cleared in the mode of the created file.

On page 2189 line 70030 section umask(), change:
The file permission bits in the value returned by umask() shall be the previous value of the file mode creation mask. The state of any other bits in that value is unspecified, ...
to:
The file permission bits in the value returned by umask() shall be the previous value of the file mode creation mask. [XSI]The S_ISVTX bit in the returned value shall be clear.[/XSI] The state of any other bits in the returned value is unspecified, ...

Tags tc3-2008
Attached Files

- Relationships

There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2021-10-08 14:31 geoffclare New Issue
2021-10-08 14:31 geoffclare Name => Geoff Clare
2021-10-08 14:31 geoffclare Organization => The Open Group
2021-10-08 14:31 geoffclare Section => mkdir()
2021-10-08 14:31 geoffclare Page Number => 1316
2021-10-08 14:31 geoffclare Line Number => 43790
2021-10-08 14:31 geoffclare Interp Status => ---
2022-01-06 17:28 Don Cragun Status New => Resolved
2022-01-06 17:28 Don Cragun Resolution Open => Accepted
2022-01-06 17:29 Don Cragun Tag Attached: tc3-2008
2022-02-04 10:04 geoffclare Status Resolved => Applied


Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker