Re: multiple symbols of select(), do they matter?
site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com Le 7 sept. 08 à 10:59, Luke Daley a écrit : On 07/09/2008, at 6:42 PM, Jean-Daniel Dupas wrote: for example $1050 => Mac OS X 10.5 and later behavior change $DARWIN_EXTSN => Extended behavior beyond standards $INODE64 => 64-bit ino_t values $LDBL128 => 128-bit long double support (32-bit PowerPC only) $UNIX2003 => UNIX™ conformance $NOCANCEL => (used internally) _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... Why you do no simply call the matching function instead of using the same select call for all variants ? int select_unix2003(int nfds, fd_set * __restrict readfds, fd_set * __restrict writefds, fd_set * __restrict errorfds, struct timeval * __restrict timeout) { my_before_select(); int result; int (*real_select)(int nfds, fd_set * __restrict readfds, fd_set * __restrict writefds, fd_set * __restrict errorfds, struct timeval * __restrict timeout) = dlsym(RTLD_NEXT, "select$UNIX2003"); result = real_select(nfds, readfds, writefds, errorfds, timeout); my_after_select(); return result; } That's what I am looking to do, was more curious about what the _actual_ differences are with the different symbols. -- I don't know is there is a doc that explains all differences, but at least, there is this: Generaly, the NOCANCEL variant is a variant that does not have posix thread cancelation point (but should according to the standard). UNIX2003 signifie a change in the function behavior. For select, this is only a change in the way it handle the timeout argument. I think one of the variant update it, but not the other. If you realy want details about the changes, you may have a look at the libc sources. This email sent to site_archiver@lists.apple.com
participants (1)
-
Jean-Daniel Dupas