Document Number: AUSTIN/SD2


Revision Date: 2007-09-10

Source: Nick Stoughton/Andrew Josey

Change History

March 4th - Document Created after Menlo Park Meeting (Austin/2)

July 22 - Updated after Montreal Meeting (Austin/M3)

May 19 2000 - Updated after Reading Meeting (Austin/M5)

October 13 2000 - Updated after Austin Meeting (Austin/M6)

March 5 2001 - Updated after Austin Meeting (Austin/M7)

June 9 2001 - Updated after Austin Meeting (Austin/M8)

May 9 2002 - Updated after Austin Meeting (Austin/M9)

January 14 2005 - Updated after Austin Meeting (Austin/M10)

September 15 2006 - Updated after Austin Meeting (Austin/M12)

March 1 2007 - Updated after Austin Meeting (Austin/M13)

September 10 2007 - Updated after Austin Meeting (Austin/M14)


The following points reached consensus during the meeting; they may be removed from this list and moved to the issues list at the request of any Organizational Representative.

1. AGREED that copyright issues should not be an impediment to immediate progress.

2. AGREED that networking interfaces should be included in the scope, independent of the approval of 1003.1g

3. AGREED that XTI, Raw Sockets, and the advanced API to IPv6 interfaces should be optional features (if included at all), independent of the approval of 1003.1g or the adoption of any new version of XNS.

4. AGREED: that the group should not revise any of the four parts without considering the whole.

5. AGREED We should extend our scope to allow us to correct UN, PI, OF, OP marked sections of XCU, and OH sections of XSH.

6. AGREED POSIX_VDISABLE, POSIX_SAVED_IDS and POSIX_JOB_CONTROL should be removed as options, the functionality that they specified should become mandatory, but sysconf() with these names should be valid, and should return 1 (and the names have to be defined in <unistd.h>).

7. AGREED There should be a new option _POSIX_PII (reversed in item 37)

8. AGREED Add option groups for POSIX_RAW_SOCKETS, POSIX_XTI, POSIX_IPV6, [[and POSIX_IPV6_EXT??]].

9. AGREED In the on-line version, the margin characters are hyperlinks back to definition.

10. AGREED The change history must include the differences from the 1996 version of POSIX, and not just from previous X/Open specs.

11. AGREED OH markings: All <sys/types.h> where marked as OH in a synopsis, this entire line should be removed, and the change history needs to note that although sys/types.h was required for conforming implementations of previous POSIX systems, it was not required for UNIX applications. Implementations are now required to make any types used visible through whatever header is required in the synopsis. This is typically achieved via inclusion of sys/types.h in that header.

12. AGREED XSH: EX markings within a manual page by default disappear (i.e. the shading and margin markings go, but the text remains), and the change history is updated to state that "This new requirement derives from alignment with the Single Unix Specification". For draft 1, retain shading and change EX to MAN.

13. AGREED FIPS markings, in general, should revert to the POSIX wording.

14. AGREED.1a/.2b merge will not happen until those specs are finalized.

15. AGREED SEE ALSO section should reference the rationale where appropriate

16. AGREED To add a new section "RATIONALE" to all interfaces, before "FUTURE DIRECTION", and move API specific rationale from the XRAT volume here. What remains in XRAT then should be tidied up to be consistent, and have links (see also sections) back to the XCU/XSH pages. This is a development technique to ensure that rationale gets correctly reviewed. It may or may not be moved back to XRAT for final publications.

17. AGREED The Application Usage, Examples, Future Directions, and Rationale sections of an interface description are not normative (they are informative), and should be marked (e.g. by having POSIX style rationale bars) to show this.

18. AGREED Where an interface has a version in the C standard, the Description section should describe the relationship to the C standard version. EX markings should be added as appropriate to show where C has been extended.

19. AGREED XSH Draft 1 should contain section 1 from POSIX.1and XCU draft 1 should contain section 1 from POSIX.2

20. AGREED All definitions from both POSIX.1 and POSIX.2 should go into draft 1 of XBD

21. AGREED that POSIX_VERSION will not be changed at draft 1 (use XSH value), but will be set to a new value at publication time if appropriate.

22. AGREED we will adopt the new pax format from .2b when that document is complete. We will not update the tar or cpio formats. The current standards do not specify the format of ar archives, and we will not add a specification of the ar format.

23. AGREED For document review: we will use PDF or PostScript documents, with line numbers, comments in aardvark format, submitted either via email or a web-based form.

24. AGREED any interface that has an existing application usage suggesting a better alternative interface should become legacy in the next revision.

25. AGREED any area of XCU marked as EX not in one of the options described in AUSTIN/18, should become mandatory.

26. AGREED there will be no additional namespace reservation beyond that brought in by 1003.1a.


27. AGREED Use of the imperative should be restored and included in the new text. Go through POSIX.1 and POSIX.2 to find all uses of "shall" (and will), [plus maybe "should", "can", "must", "may", "might" etc] and restore this usage in normative context. Use the same style in XSI and MAN shaded sections. (Note that this is for normative text only).


28. AGREED Remove all the MAN shading for the next draft.

29. AGREED Merge the RWL option into the THR option.

30. AGREED Proceed with the #! proposal in Aardvark, but do not permit any invention. note - see 31


31. AGREED to reverse our earlier decision, and abandon the #! proposal


32. AGREED - Bytes shall be defined as 8-bits, other implementations are no longer POSIX conforming. We recognize that C99 puts us in a hard spot; we have the choice of accepting C99, having 8 bit bytes and networking; or throwing out either C99 or networking. Neither throwing out C99 or throwing out networking is acceptable. The compromise is acceptable.

33. AGREED - Leap seconds, or any other adjustment mechanism, are not part of the mechanism for calculating "seconds since the Epoch", and that any corrections to match adjustments in official time in an implementation are implementation defined.

34. AGREED that all implementations shall support one or more environments where the widths of the following types are no greater than the width of type long:
blksize_t, cc_t, mode_t, nfds_t, pid_t, ptrdiff_t, size_t, speed_t, ssize_t, suseconds_t, tcflag_t, useconds_t, wchar_t, wint_t


35. AGREED that the sockatmark() function be included in Draft 7, thereby fixing up the dangling reference to it in the definition of Sockets in draft 6.


36. AGREED: David Korn to act as chair of subgroup to formulate proposals for Regular Expression problems.


37. AGREED to reverse the agreement in Item 7, since the option _POSIX_PII was not implemented in the approved standard (the networking became mandatory).

38. AGREED Need to start a revision by December 2006.


39. AGREED to make all the extensions in The Open Group Extended API Set Part 1 mandatory as part of the Base, with the following changes (for full details see minutes):
  1. The addition of the UX option marker is unnecessary and will not be incorporated
  2. When incorporating functions to headers, if the header is an ISO C header then the functions are CX shaded.
  3. Since strndup() is part of Base, strdup() should move from XSI to Base.

40. AGREED that Robust Mutexes functionality and interfaces in The Open Group Extended API Set Part 3 should not be a separate option from the THR Threads option.

41. AGREED to make all the extensions in The Open Group Extended API Set Part 2 mandatory as part of the Base.

42. AGREED that the function names in The Open Group Extended API Set Part 2 match existing practise and should be adopted as is (as per the general guidelines of the Austin Group to adopt existing practise).

43. AGREED to make the extensions in The Open Group Extended API Set Part 4 mandatory as part of the Base.


44. AGREED to Add a new function, utimensat(int fd, const char * file, const struct timespec tsp[2]) with the same specification as futimesat(), except for the use of a timespec rather than timeval structure. Drop the futimesat() interface. Mark both utime() and utimes() as OB, with Application Usage pointing to utimensat().


45. AGREED Ask ISO/IEC JTC 1/SC 22 to request that WG 21 continue to work with their POSIX liaisons to resolve the difficulties represented in their thread API proposal to the mutual satisfaction of both working groups before any FCD ballot of C++0x commences.

46. AGREED to move the IXANY flag and associated functionality from XSI to base.