Minutes of the 9 October 2014 Teleconference Austin-678 Page 1 of 1 Submitted by Andrew Josey, The Open Group. 10th October 2014 Attendees Andrew Josey, The Open Group David Clissold, IBM Nick Stoughton, USENIX, ISO/IEC JTC 1/SC 22 OR Mark Ziegast, SHware Systems Don Cragun, IEEE PASC OR Martin Rehak, Oracle, The Open Group OR Geoff Clare, The Open Group Eric Blake, Red Hat Matthew Dempsky Richard Hansen, BBN Mark Brown, Canonical Apologies Joerg Schilling, FOKUS Fraunhofer * General news On the PASC PAR approval progress - still open. Don currently has the action to progress. * Outstanding actions +Bug 0000251: Forbid newline, or even bytes 1 through 31 (inclusive), in filenames OPEN http://austingroupbugs.net/view.php?id=251 Don has an action to produce a proposal. +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 Jim had provided additional information in bugnote 1627. This was discussed and Jim took an action to provide further information. +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 0000517: EBNF support OPEN http://austingroupbugs.net/view.php?id=517 Action on Joerg to look at this. +Bug 0000633: SIGEV_THREAD delivery renders many signal interfaces unsafe OPEN http://austingroupbugs.net/view.php?id=633 We noted that feedback has settled down on the mailing list, and will discuss next session. +Bug 0000657: Conditions under which fmemopen() write a NUL to the buffer are insufficiently specified OPEN http://austingroupbugs.net/view.php?id=657 Eric has an action to propose wording to clarify the behavior for fmemopen(), and also to contact the glibc developers to get their feedback. +Bug 0000658: Undefined/unspecified behavior clauses in description of open have race conditions OPEN http://austingroupbugs.net/view.php?id=658 It was noted that there is some overlap with changes in TC1. Eric took an action to update the proposal to resolve the overlaps appropriately. +Bug 0000615: pthread_setcancelstate should be async-signal-safe OPEN http://austingroupbugs.net/view.php?id=615 We now have reports on AIX and Apple. Jim to report back on whether pthread_cancelstate() is async-signal-safe on Solaris. Andrew to ask HP whether pthread_cancelstate() is async-signal-safe on HP-UX. +Bug 0000672: Necessary step(s) to synchronize filename operations on disk OPEN http://austingroupbugs.net/view.php?id=672 Geoff has a new proposed resolution in note 1618. Decided to solicit input from FS developers. Eric to go to Linux, David to AIX and Jim to Solaris. Jim has completed his action (see bugnote 1691). Andrew should chase HP and Apple for input. +Bug 0000663: Specification of str[n]casecmp is ambiguous reopened http://austingroupbugs.net/view.php?id=663 Action on David to follow up with the IBM developers about the EBCDIC collation sequence. Bug 696 either NAME_MAX shouldn't be optional, or readdir_r() needs clarification http://www.austingroupbugs.net/view.php?id=696 Don has an action to propose a resolution. Bug 0000721: Internal storage vs static storage OPEN http://austingroupbugs.net/view.php?id=721 This item is still open. Bug 0000375: Extend test/[...] conditionals: ==, <, >, -nt, -ot, -ef OPEN http://austingroupbugs.net/view.php?id=375 This is still left open due to discussions pending on the reflector. Bug 0000789: Add set -o pipefail OPEN http://austingroupbugs.net/view.php?id=789 * Current Business - Open Actions Bug #851: pthread_atfork orphans handlers in unloaded shared libraries OPEN http://www.austingroupbugs.net/view.php?id=851 Bug #854: requirement for additional built-in utilities to be searched for via $PATH was not and is not existing practice OPEN http://austingroupbugs.net/view.php?id=854 Action: Andrew to ask David Korn to comment on this bug and the previous email discussion of the issue (seq 21270). Action completed - awaiting response from David. Bug #859: Add posix_random family of interfaces OPEN http://austingroupbugs.net/view.php?id=859 Action on The Open Group Base WG to respond whether they will sponsor. Action: Andrew to followup on the outstanding items for 851,854 and 859 to see if we can move them forward. - Bug processing There had been some discussion on the mailing list about rm -f with no file operands, and how we might want to revisit bug 542. Bug #542: rm -f with no file operands http://austingroupbugs.net/view.php?id=542 It was agreed that the disposition is ok. but that an interpretation is required. Interpretation response: The standard does not speak to this issue, and as such no conformance distinction can be made between alternative implementations based on this. This is being referred to the sponsor. Rationale: The standard did not specify the behavior of the rm utility when it is invoked with no operands. Recent implementations of the utility all provide the behavior suggested so we are adding this extension to the requirements since many applications use this feature. Notes to the Editor (not part of this interpretation): Make the changes suggested in the Desired Action. Bug #872: REG_ICASE regex matching and negated bracket expr Accepted as Marked http://austingroupbugs.net/view.php?id=872 This item is tagged for TC2-2008 On page 184 lines 5968-5970 (XBD 9.3.5 RE Bracket Expression), change: A non-matching list expression begins with a ('^'), and specifies a list that shall match any single-character collating element except for the expressions represented in the list after the leading . to: A non-matching list expression begins with a ('^'), and the matching behavior shall be the logical inverse of the corresponding matching list expression (the same bracket expression but without the leading ). Bug #873: "link, linkat - link one file to another file relative to two directory file descriptors" Accepted as Marked http://austingroupbugs.net/view.php?id=873 This item is tagged for TC2-2008 For the following lines: page 565 line 19569 access page 660 line 22337 chmod page 664 line 22494 chown page 1228 line 40780 link page 1301 line 43016 mkdir page 1307 line 43219 mkfifo page 1391 line 49540 open page 1797 line 57881 rename page 2073 line 66122 symlink page 2174 line 69164 unlink page 2187 line 69579 utimensat/utimes remove the phrases: "relative to directory file descriptor" "relative to two directory file descriptors" Bug #874: pthread_once() rationale makes bogus claims Accepted as Marked http://austingroupbugs.net/view.php?id=874 This item is tagged for TC2-2008 On page 1684 line 54506 section pthread_once() and page 1685 line 54528 section pthread_once() in the RATIONALE section, change from: extern int initialize_random(); to: extern void initialize_random(void); On page 1685 line 54518 section pthread_once() in the RATIONALE section, change from: For dynamic library initialization in a multi-threaded process, a simple initialization flag is not sufficient; the flag needs to be protected against modification by multiple threads simultaneously calling into the library. Protecting the flag requires the use of a mutex; however, mutexes have to be initialized before they are used. Ensuring that the mutex is only initialized once requires a recursive solution to this problem. The use of pthread_once() not only supplies an implementation-guaranteed means of dynamic initialization, it provides an aid to the reliable construction of multi-threaded and realtime systems. The preceding example then becomes: to: For dynamic library initialization in a multi-threaded process, if an initialization flag is used the flag needs to be protected against modification by multiple threads simultaneously calling into the library. This can be done by using a mutex (initialized by assigning PTHREAD_MUTEX_INITIALIZER). However, the better solution is to use pthread_once(), which is designed for exactly this purpose, as follows: AOB: The meeting finished with a discussion on mechanisms for adding features to shell http://thread.gmane.org/gmane.comp.standards.posix.austin.general/9907 It was not conclusive. Next Steps ---------- The next call is on October 16, 2014 (a Thursday) Calls are anchored on US time. (8am Pacific) This call will be for the regular 90 minutes. http://austingroupbugs.net An IRC channel will be available for the meeting irc://irc.freenode.net/austingroupbugs An etherpad is usually up for the meeting, with a URL using the date format as below: http://posix@posix.rhansen.org:9001/p/201x-mm-dd password=2115756#