Minutes of the 4th November 2021 Teleconference Austin-1176 Page 1 of 1 Submitted by Andrew Josey, The Open Group. 5th November 2021 Attendees: Don Cragun, IEEE PASC OR Nick Stoughton, Logitech/USENIX, ISO/IEC JTC 1/SC 22 OR Eric Blake, Red Hat, The Open Group OR Geoff Clare, The Open Group Andrew Josey, The Open Group Apologies Mark Ziegast, SHware Systems Dev. Tom Thompson, IEEE Eric Ackermann, HPI, University of Potsdam * General news This was a call dedicated to general bugs. * 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 13th June 2019 and earlier) Bug 713 - Nick to raise with the C committee. This item raised in Austin/1129 and submitted to the C committee in May 2021. * Current Business Bug 1440: Calling `system("-some-tool")` fails (although it is a valid `sh` command) https://austingroupbugs.net/view.php?id=1440 Accepted as Marked We revisited this item. This item is tagged for Issue 8. The interpretation has been revised and the clock restarted. Interpretation response: The standard states that system() behaves as if it passes "-c" followed by the command string to execl() , and conforming implementations must conform to this. However, concerns have been raised about this which are being referred to the sponsor. Rationale: There is nothing known that applications can usefully do if the "--" is omitted, therefore there is no reason that the standard should not require the "--". The standard warns applications not to use filenames that start with ('-'). (See the definition of Portable Filename in XBD chapter 3). However, there is no equivalent warning for filenames beginning with ('+'), and applications should be able to use system() to execute commands where the command word begins with '+' (without the need for special precautions such as adding a at the beginning). Notes to the Editor (not part of this interpretation): On page 1437 line 47730 section popen(), change: execl(shell path, "sh", "-c", command, (char *)0); where shell path is ... to: execl(, "sh", "-c", "--", command, (char *)0); where is ... On page 2107 line 67568 section system(), change: execl(, "sh", "-c", command, (char *)0); to: execl(, "sh", "-c", "--", command, (char *)0); Add on page 1439 after line 47807 and on page 2110 after line 67736: Earlier versions of this standard required the command string to be passed as the next argument after "-c" (omitting "--"). This meant that portable applications needed to take care not to pass a command string beginning with ('-') or ('+'), as it would then be interpreted as containing options. Now that implementations are required to pass the "--", applications no longer need to do this. Bug 1447: fread()/fwrite() (maybe more similar) specify no requirements on args Rejected https://austingroupbugs.net/view.php?id=1447 Any attempt to read or write data beyond the end of an object is undefined behavior. How the attempt is made is irrelevant - calling a function with a buffer and a size larger than the buffer is one way; calling a function with a buffer, an element size, and a number of elements, where the buffer is not large enough to hold that many elements is another. The standard already permits implementations to fail with EFAULT on any interface as an extension (it's something we have explicitly chosen not to standardize, however, as detecting memory faults is not portable to all hardware). Bug 1449: "Decimal-point character" vs. "radix character" Accepted https://austingroupbugs.net/view.php?id=1449 This item is tagged for TC3-2008. Bug 1452: prs :KV: is mandated but most implementations do not support it Accepted as marked. https://austingroupbugs.net/view.php?id=1452 This item is tagged for TC3-2008. An interpretation is required. Interpretation response: The standard states the data keywords that can be used with prs -d, and conforming implementations must conform to this. However, concerns have been raised about this which are being referred to the sponsor. Rationale: Only one known implementation supports :KV: and it always returns the value "None" for this keyword. Notes to the Editor (not part of this interpretation): Delete the :KV: row of the table: | :KV: | Keyword validation string | " | text | S | Next Steps ---------- The next calls are on: Mon 2021-11-08 (gettext) Thu 2021-11-11 (general bugs) There will be no meetings on Mon 2021-11-22 and Thu 2021-11-25 The calls are for 90 minutes Calls are anchored on US time. (8am Pacific) Please check the calendar invites for dial in details. Bugs are at: https://austingroupbugs.net An etherpad is usually up for the meeting, with a URL using the date format as below: https://posix.rhansen.org/p/20xx-mm-dd (For write access this uses The Open Group single sign on, for those individuals with gitlab.opengroup.org accounts. Please contact Andrew if you need to be setup)