On Oct 25, 2011, at 1:22 AM, Mark Kettenis wrote: >> From: Jeremy Huddleston <[email protected]> >> Date: Mon, 24 Oct 2011 19:41:00 -0700 >> >> On Oct 24, 2011, at 7:05 PM, Keith Packard wrote: >> >>> And, do we allow the use of >>> strndup in the server? >> >> Alan just asked that a few days ago ;). >> >> I wouldn't be against using strndup, but there would need to be an >> in-tree implementation provided for systems that lack it (like OSX >> 10.6 and prior) since it was introduced to POSIX in SUSv4, and our >> minimum requirement is Unix98. I'd be in support of bumping that to >> SUSv3, but not yet SUSv4 since there isn't even a conformance suite >> for it yet. > > s/SUSv3/POSIX:2004/ and s/SUSv4/POSIX:2008/? > > SUS includes SystemV-specific interfaces on top of POSIX that are not > generally available on BSDs (including probably OSX). Those should > not become mandatory. And I agree that it is too early to start > relying on POSIX:2008; I don't think anybody fully implements it, > although Solaris and Linux are probably very close.
Yes, sorry for over simplifying it. The standards sets are certainly non-trivial. When I said SUSv4, I really meant the SUSv4 *Base Specifications* which refers to IEEE Std 1003.1-2008, ISO/IEC 9945:2008, and TOG Issue 7. All three are identical and just known under different names for historical reasons. I was not suggesting that we ever require optional interfaces. IE, when I said SUSv3, I meant Unix 03. Sorry for the confusion. But on that note: Solaris 8 and 9 are registered as Unix 98, and Solaris 10 is registered as Unix 03. I assume Solaris 11 is also Unix 03 compliant but not yet registered. Mac OS X 10.5 and 10.6 are registered as Unix 03. I believe FreeBSD, OpenBSD, and NetBSD are close enough to Unix 03 for our needs (the one standout is _POSIX_SAVED_IDS). I also believe that eglibc is close enough to Unix 03 for our needs. I do not know much about Cygwin, so hopefully Jon can fill us in there. Assuming Jon is ok with it for Cygwin, I don't see much reason to hold onto Unix98 as our minimum requirement. I'd much rather see us embrace Unix 03 (with IEEE Std 1003.1-2004). Unix 03 gets us some functionality that we're already using in places, but this can let us clean out #ifdef cruft and configure.ac checks. Specifically, setegid(2) and seteuid(2) are in Unix 03. _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
