Minutes of the 27th September 2018 Teleconference Austin-887 Page 1 of 1 Submitted by Andrew Josey, The Open Group. 30th September 2018 Attendees: Don Cragun, IEEE PASC OR Nick Stoughton, USENIX, ISO/IEC JTC 1/SC 22 OR Geoff Clare, The Open Group Mark Ziegast, SHware Systems Dev. Eric Blake, Red Hat Martin Rehak, Oracle, The Open Group OR Joerg Schilling, FOKUS Fraunhofer Apologies: Andrew Josey, The Open Group David Clissold, IBM * General news None. * Outstanding actions (Please note that this section has been flushed to shorten the minutes - to locate the previous set of outstanding actions, look to the minutes from 9 March 2018 and earlier) * Current Business Bug 1077: Recommend support for wide-character regcomp and regexec and/or specify multi-byte behavior OPEN http://austingroupbugs.net/bug_view_page.php?bug_id=1077 Andrew has completed the action to ping his Apple contact and is awaiting a reply. Bug 1122: POSIX should include gettext() and friends OPEN http://austingroupbugs.net/view.php?id=1122 Left open as an action is still in progress to flesh out a complete proposal. Bug 1134: Add getentropy interface OPEN http://austingroupbugs.net/view.php?id=1134 Action: Andrew to add boilerplate response regarding a proposal for new interface, and also to ask The Open Group OR if they would sponsor this addition. Action Completed. Bug 0001133: find clarification on -xdev behavior for mounted filesystem within primary Accepted as marked http://austingroupbugs.net/view.php?id=1133 This item is tagged for Issue 8. On page 255 line 8562 section , add after FTW_MOUNT: FTW_XDEV The walk does not descend below directories that have a different device ID than the starting directory. On page 1397 line 46455 section nftw(), change: If clear, nftw() shall report all files encountered during the walk. to: If clear, nftw() shall report all files encountered during the walk, unless FTW_XDEV is set. (Note that bug 0001210 has changes to the first part of the FTW_MOUNT description to use wording similar to the FTW_XDEV wording below.) On page 1397 line 46457 section nftw(), add after FTW_PHYS: FTW_XDEV If set, nftw() shall not descend below directories that have a different device ID (st_dev) than path; that is, when a directory with a different device ID is encountered, nftw() shall report the directory itself (unless FTW_MOUNT is set) but shall not report any files below the directory. If clear, nftw() shall report all files encountered during the walk, unless FTW_MOUNT is set. Note: If both FTW_MOUNT and FTW_XDEV are set, nftw() obeys both flags but the end result is the same as if FTW_XDEV were clear. On page 1400 line 46568 section nftw(), add a new paragraph to APPLICATION USAGE: When restricting the walk to files on one file system, it can sometimes be desirable for the crossing points themselves to be reported and sometimes for them not to be reported. (Crossing points are mount points and, if FTW_PHYS is clear, symbolic links to directories on other file systems.) With FTW_XDEV nftw() reports them and with FTW_MOUNT it does not. However, with FTW_MOUNT it also does not report symbolic links to non-directory files on other file systems (if FTW_PHYS is clear). If there is a need for an application to exclude crossing points but include symbolic links to non-directory files on other file systems, this can be achieved by using FTW_XDEV and performing a check such as the following in fn(): if (tflag == FTW_D && sb->st_dev != saved_dev) return 0; (where saved_dev is the st_dev value for path). On page 2797 line 91941 section find, add before -xdev: -mount The primary shall always evaluate as true; it shall cause find to act only on files that have the same device ID (st_dev, see [xref to stat()]) as the path operand below which they are encountered and cause find not to descend below directories that have a different device ID than that path operand. If any -mount primary is specified, it shall apply to the entire expression even if the -mount primary would not normally be evaluated. On page 2797 line 91942 section find, change: The primary shall always evaluate as true; it shall cause find not to continue descending past directories that have a different device ID (st_dev, see [xref to stat()]). to: The primary shall always evaluate as true; it shall cause find not to descend below directories that have a different device ID (st_dev, see [xref to stat()]) than the path operand below which they are encountered; that is, when a directory with a different device ID is encountered, find shall act on the directory itself (unless -mount is specified) but shall not act on any files below the directory. On page 2801 line 92114 section find, add a new paragraph to APPLICATION USAGE: When restricting the search to files on one file system, it can sometimes be desirable for the crossing points themselves to be acted on and sometimes for them not to be acted on. (Crossing points are mount points and, if the -L option is specified, symbolic links to directories on other file systems.) The -xdev primary acts on them and the -mount primary does not. However, -mount also does not act on symbolic links to non-directory files on other file systems (if -L is specified). If there is a need for an application to exclude crossing points but include symbolic links to non-directory files on other file systems, this can be achieved by using two find commands as follows: find -L dir -mount -type d -print find -L dir -xdev ! -type d -print (in a subshell whose output is piped to sort, if the order matters). If both -mount and -xdev are specified, find obeys both primaries but the end result is the same as if -xdev were not specified. On page 2804 line 92246 section find, add a new paragraph to RATIONALE: Historically, many find implementations supported -mount and -xdev as synonymous primaries and earlier versions of this standard only required support for -xdev. However, the behavior of find with -xdev differed from that of the nftw() function with FTW_MOUNT as regards whether the mount point itself was included or excluded. Therefore the standard now requires support for both primaries with slightly differing behaviors: -mount behaves in the manner of nftw() with the traditional FTW_MOUNT flag, and -xdev in the manner of nftw() with a new FTW_XDEV flag. On page 3076 line 102580 section pax, change: When traversing the file hierarchy specified by a pathname, pax shall not descend into directories that have a different device ID (st_dev; see [xref to stat()]). to: When traversing the file hierarchy specified by a pathname, pax shall not descend below directories that have a different device ID (st_dev, see [xref to stat()]) than the specified pathname; that is, when a directory with a different device ID is encountered, pax shall process (archive or copy) the directory itself but shall not process any files below the directory. On page 3094 line 103290 section pax, add a new paragraph to APPLICATION USAGE: When restricting file hierarchy traversal to one file system, it can sometimes be desirable for the crossing points themselves to be processed (archived or copied) and sometimes for them not to be processed. (Crossing points are mount points and, if the -L option is specified, symbolic links to directories on other file systems.) With the -X option pax processes them, but there is no standard way to have pax not process them. However, this can be achieved by using find to do the hierarchy traversal and piping the output of find to pax (with the -d option); see the APPLICATION USAGE for [xref to find]. Bug 1210: FTW_MOUNT and symbolic links to directories on other file systems Accepted http://austingroupbugs.net/view.php?id=1210 This item is marked for TC3-2008. An interpretation is required. The standard states the way in which the FTW_MOUNT flag is to be processed, and conforming implementations must conform to this. However, concerns have been raised about this which are being referred to the sponsor. Rationale: The description of this flag in the standard does not match the way historical implementations behaved. This changes the description in the standard to match historic behavior. Notes to the Editor (not part of this interpretation): Make the changes suggested in the Desired Action. Action: Andrew to start the interpretation timer. Completed after the meeting Bug 1136: awk: missing case where a bare array name may be used OPEN http://austingroupbugs.net/view.php?id=1136 We worked on wording for this item and will pick up again on it next time. Next Steps ---------- The next call is on October 4th 2018 (Thursday). Calls are anchored on US time. (8am Pacific) This call will be for the regular 90 minutes. http://austingroupbugs.net An etherpad is usually up for the meeting, with a URL using the date format as below: https://posix.rhansen.org/p/201x-mm-dd username=posix password=2115756#