mirror of
https://git.savannah.gnu.org/git/gnulib.git
synced 2025-08-16 01:22:18 +03:00
* lib/poll.c: if recv returns ENOTSOCK, assume the descriptor is readable. In this case POLLHUP will not be supported. * doc/posix-functions/poll.texi: Document this. Copyright-paperwork-exempt: yes
35 lines
984 B
Plaintext
35 lines
984 B
Plaintext
@node poll
|
|
@section @code{poll}
|
|
@findex poll
|
|
|
|
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/poll.html}
|
|
|
|
Gnulib module: poll
|
|
|
|
Portability problems fixed by Gnulib:
|
|
@itemize
|
|
@item
|
|
This function is missing on some platforms:
|
|
mingw, MSVC 9, BeOS, HP NonStop.
|
|
@item
|
|
This function doesn't work on special files like @file{/dev/null} and ttys like
|
|
@file{/dev/tty} on some platforms:
|
|
Mac OS X 10.4.0, AIX 5.3.
|
|
@end itemize
|
|
|
|
Portability problems not fixed by Gnulib:
|
|
@itemize
|
|
@item
|
|
Under BeOS, Gnulib's @code{poll} replacement 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{poll} replacement might
|
|
return 0 even before the timeout has passed. Programs using it with pipes can
|
|
thus busy wait.
|
|
|
|
@item
|
|
Under HP NonStop, file descriptors other than sockets do not support
|
|
POLLHUP; they will return a "readable" status instead.
|
|
@end itemize
|