2016-11-02 10:13:37 +0000, Geoff Clare: [...] > We believe that all modern shells are already using O_EXEC. The one > notable shell that doesn't is ksh88 but I don't count that as modern, > since ksh93 is its modern replacement. [...]
Has ksh93 ever been certified as a POSIX conformant shell? Actually, have any other shell than ksh88 and bash been certified? I regard ksh93 as an "experimental/research shell". Many of the new features are not really finalised (as acknowledged by the authors in the doc), there are a few POSIX compliance issues and bugs... [...] > I think many script authors (I certainly am one of them) are nervous about > trusting ln to fail if the dest exists because historically some versions > removed it. This was actually required by XPG1/2/3, which were the > standards that certified UNIX systems followed before POSIX.2 came along > in 1992, and Solaris /bin/ln still behaved that way until some time during > Solaris 10. (I have an early version of Solaris 10 that does it, and a > more up to date version that doesn't.) [...] isn't mkdir the canonical way to do mutual exclusion locks in shell scripts? IIRC there were issues with ln on NFS for instance. -- Stephane