| To: | yyyyyyyyyyyyyyy@xxxxxxxxxxxxx |
|---|---|
| Subject: | Defect in XSH mq_unlink |
| From: | Geoff Clare <yyy@xxxxxxxxxxxxx> |
| Date: | Tue, 8 Nov 2005 16:52:21 +0000 |
@ page 814 line 26691-26693 section mq_unlink objection [gwc mq_unlink
ENAMETOOLONG]
Problem:
Defect code : 1. Error
XSH ERN 112 contains corrections to the mq_open() and sem_open()
pages related to the {NAME_MAX} and {PATH_MAX} length limits for
message queue and semaphore names.
The same issue also affects mq_unlink() and sem_unlink().
Just making the same change to the ENAMETOOLONG error for these
functions as was done for mq_open() and sem_open() would solve the
problem, but it would also introduce another: it would permit
`Weirdnix' implementations where a message queue or semaphore name
of a given length can be created, but attempting to unlink it
produces an ENAMETOOLONG error. I have attempted to address this
by adding an extra requirement on the end of the ENAMETOOLONG
descriptions. The wording could probably be improved, and it may
be better to add it in a different place.
Action:
Delete lines 26691-26693:
"[ENAMETOOLONG]
The length of the name argument exceeds {PATH_MAX} or a
pathname component is longer than {NAME_MAX}."
After line 26694 add:
"The mq_unlink() function may fail if:
[ENAMETOOLONG]
The length of the name argument exceeds _POSIX_PATH_MAX on
systems that do not support the XSI option [XSI]or
exceeds _XOPEN_PATH_MAX on XSI systems[/XSI], or has a
pathname component that is longer than _POSIX_NAME_MAX on
systems that do not support the XSI option [XSI]or
longer than _XOPEN_NAME_MAX on XSI systems[/XSI].
A call to mq_unlink() with a name argument that contains
the same message queue name as was previously used in a
successful mq_open() call shall not give an ENAMETOOLONG
error."
On page 1281 line 40127-40129 section sem_unlink:
Delete lines 40127-40129:
"[ENAMETOOLONG]
The length of the name argument exceeds {PATH_MAX} or a
pathname component is longer than {NAME_MAX}."
After line 40130 add:
"The sem_unlink() function may fail if:
[ENAMETOOLONG]
The length of the name argument exceeds _POSIX_PATH_MAX on
systems that do not support the XSI option [XSI]or
exceeds _XOPEN_PATH_MAX on XSI systems[/XSI], or has a
pathname component that is longer than _POSIX_NAME_MAX on
systems that do not support the XSI option [XSI]or
longer than _XOPEN_NAME_MAX on XSI systems[/XSI].
A call to sem_unlink() with a name argument that contains
the same semaphore name as was previously used in a
successful sem_open() call shall not give an ENAMETOOLONG
error."
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Defect in XBD File Times Update, eggert |
|---|---|
| Next by Date: | (Fwd) Defect in mmap, munmap, mprotect, msync (previously mmap, munmap, mprotect, msync conflict), Andrew Josey |
| Previous by Thread: | Defect in XBD File Times Update, eggert |
| Next by Thread: | Defect in XSH mq_unlink, Geoff Clare |
| Indexes: | [Date] [Thread] [All Lists] |