Minutes of the 21 February 2013 Teleconference Austin-596 Page 1 of 1 Submitted by Andrew Josey, The Open Group. 22 February 2013 Attendees Mark Brown, IBM, TOG OR Don Cragun, PASC OR Andrew Josey, The Open Group Eric Blake, Red Hat Joerg Schilling, Fraunhofer Society Jim Pugsley, Oracle Nick Stoughton, USENIX, ISO/IEC OR Geoff Clare, The Open Group Richard Hansen, BBN * General News Andrew reported that the TC is now complete and he is waiting on any final feedback on the participants lists in the frontmatter. This is due by no later than February 25. After that point we will move onto complete the full merged edition. * Old Business +Bug 0000561: NUL-termination of sun_path in Unix sockets OPEN http://austingroupbugs.net/view.php?id=561 Eric has an action to update the proposal. +Bug 0000573: Please add '+' to the portable filename character set OPEN http://austingroupbugs.net/view.php?id=573 Joerg has an action to prepare a proposed change. +Bug 0000592: consistent use of struct timespec OPEN http://austingroupbugs.net/view.php?id=592 This item needs further investigation of existing implementations. Mark reported that AIX does not have a problem with this. Jim notes he is still looking at this. +Bug 0000598: OH shading and new interfaces OPEN http://austingroupbugs.net/view.php?id=598 Eric has an action to propose a new solution with self-contained headers. Bug 0000576: No format specifiers for several types OPEN http://austingroupbugs.net/view.php?id=576 Bug 0000599: Reserved "no thread" value for pthread_t A/M Issue 8 Bug 0000517: EBNF support OPEN http://austingroupbugs.net/view.php?id=517 It was agreed that we need Joerg's input on this item and have left it open for now. Andrew took an action on the 12 September call to notify Joerg (completed after the meeting). * Current Business Bug 0000660: close bracket used where there should be a close brace Accept http://austingroupbugs.net/view.php?id=660 This item is tagged as TC1-2008. The editors plan to apply this as an errata in the merged document being produced that incorporates TC1-2008. Andrew will confirm with Cathy that this is possible. Bug 0000633: SIGEV_THREAD delivery renders many signal interfaces unsafe OPEN http://austingroupbugs.net/view.php?id=633 This item was again left open pending further feedback. Bug 0000659: Remove the requirement that timer_t be an arithmetic type Accepted as Marked http://austingroupbugs.net/view.php?id=659 Geoff had completed his action. This item is tagged for TC2-2008. An interpretation is required. Interpretation response: The standard states that timer_t is an arithmetic type, and conforming implementations must conform to this. However, concerns have been raised about this which are being referred to the sponsor. Rationale: It appears that this requirement may be an accident of the way timer_t was added to POSIX.1 via the .1b amendment. Notes to the Editor (not part of this interpretation): At page 399 line 13408 add timer_t to the list of exceptions to the arithmetic types requirement. At page 400 line 13438 add timer_t to the list of types that have no comparison or assignment operators. Cross-volume changes to XSH... At page 2113 line 66876 section timer_delete() add a new paragraph to the end of the DESCRIPTION: The behavior is undefined if the value specified by the timerid argument does not correspond to a timer ID returned by timer_create() but not yet deleted by timer_delete(). At page 2113 line 66881-66882 section timer_delete() replace the entire ERRORS section with: No errors are defined. At page 2113 line 66888 section timer_delete() change the RATIONALE section from: None. to: If an implementation detects that the value specified by the timerid argument to timer_delete() does not correspond to a timer ID returned by timer_create() but not yet deleted by timer_delete(), it is recommended that the function should fail and report an [EINVAL] error. At page 2115 line 66956 section timer_getoverrun() add a new paragraph to the end of the DESCRIPTION: The behavior is undefined if the value specified by the timerid argument to timer_getoverrun(), timer_gettime(), or timer_settime() does not correspond to a timer ID returned by timer_create() but not yet deleted by timer_delete(). At page 2115 line 66968-66970 section timer_getoverrun() delete: These functions may fail if: [EINVAL] The timerid argument does not correspond to an ID returned by timer_create() but not yet deleted by timer_delete(). At page 2116 line 66997 section timer_getoverrun() add a new paragraph to the end of the RATIONALE section: If an implementation detects that the value specified by the timerid argument to timer_getoverrun(), timer_gettime(), or timer_settime() does not correspond to a timer ID returned by timer_create() but not yet deleted by timer_delete(), it is recommended that the function should fail and report an [EINVAL] error. Bug 0000658: Undefined/unspecified behavior clauses in description of open have race conditions OPEN http://austingroupbugs.net/view.php?id=658 Eric has an action to work on wording for the remaining three flags. Bug 0000657: Conditions under which fmemopen() write a NUL to the buffer are insufficiently specified OPEN http://austingroupbugs.net/view.php?id=657 This was discussed further. Eric took an action to propose wording to clarify the behavior for fmemopen(), and also to contact the glibc developers to get their feedback. Bug 0000656: Clearly allow or forbid thread-local storage for "static" buffers OPEN http://austingroupbugs.net/view.php?id=656 Don took an action to propose wording changes to all of the same places that bug 75 modified. Bug 0000655: Mark strerror_r obsolescent for next issue OPEN http://austingroupbugs.net/view.php?id=655 This was discussed. It is believed that there is a bigger issue here with the use of header mechanisms to make function calls result in references with different names. For example, the way large file handling is implemented in ILP32OFF64 environments is typically for the headers to turn open() calls into _open64(), stat() into _stat64(), etc. In some cases such as open(), XSH 2.1.1 rule 4 says the function can be declared explicitly and used without including its associated header, but this would result in the application calling the 32-bit open() (and thus getting the wrong offset maximum). Since this is widespread existing practice, we will need to solve the problem by modifying XSH 2.1.1 rule 4 in some way. We can't simply remove it because it derives from the C Standard and therefore must continue to apply to functions from the C Standard. A reminder for next week is to look at bug 573 (if Joerg has completed his action) Next Steps ---------- The next call is on February 28 2013 (a Thursday) Andrew will bring up the bridge (in Mark's absense) This call will be for the regular 90 minutes. http://austingroupbugs.net See the calendar for the list of dialup numbers. An IRC channel will be available for the meeting irc://irc.freenode.net/austingroupbugs