X-Git-Url: https://erislabs.net/gitweb/?a=blobdiff_plain;f=doc%2Fposix-functions%2Fselect.texi;h=26fb2022ad1e68ba5b88a8a10b1ffcb89bcc4151;hb=b28ec8ed78286cbd1d113d0785e0e1f5cf11832e;hp=81e56116bbe06dfd7f66bcbc9b418cc1cbc1bcdc;hpb=32848a0b172a6f0f4f7122cc1c7c1050f85094df;p=gnulib.git diff --git a/doc/posix-functions/select.texi b/doc/posix-functions/select.texi index 81e56116b..26fb2022a 100644 --- a/doc/posix-functions/select.texi +++ b/doc/posix-functions/select.texi @@ -2,9 +2,9 @@ @section @code{select} @findex select -POSIX specification: @url{http://www.opengroup.org/susv3xsh/select.html} +POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/select.html} -Gnulib module: sys_select +Gnulib module: select Portability problems fixed by Gnulib: @itemize @@ -15,6 +15,13 @@ file descriptors. @item On Windows platforms (excluding Cygwin), error codes for @code{accept} are not placed in @code{errno}, and @code{WSAGetLastError} must be used instead. +@item +This function fails when the @code{nfds} argument is 0 on some platforms: +Interix 3.5. +@item +On some platforms, this function fails to detect invalid fds with +EBADF, but only if they lie beyond the current maximum open fd: +FreeBSD 8.2. @end itemize Portability problems not fixed by Gnulib: @@ -28,6 +35,18 @@ unmodified. On BeOS, @code{select} can only be called on descriptors created by the @code{socket} function, not on regular file descriptors. @item +Under Windows, when passing a pipe, Gnulib's @code{select} replacement might +return 0 even before the timeout has passed. Programs using it with pipes can +thus busy wait. +@item +On Solaris 2.6 and older, @code{select} applied to a file descriptor opened +for reading and associated with @code{/dev/null} hangs, waiting for input, +when instead it should return immediately. +@item On Linux, when some file descriptor refers to a regular file, @code{select} may fail, setting @code{errno} to @code{EBADF}. +@item +This function is declared in @code{}, not @code{}, +on some platforms: +IRIX 5.3. @end itemize