[vlc-devel] commit: Revert "poll(): ifndef HAVE_POLL means we don't use poll(), not that it doesn't exist. In OSX poll() is broken for sockets, so we don' t use it. Since poll is a kernel function in OSX however, the kernel implementation was used whenever we used poll(), instead of VLCs private poll() which was the intended behaviour. Renamed poll() to vlc_poll() to prevent this." (Derk-Jan Hartman )
Rémi Denis-Courmont
rdenis at simphalempin.com
Thu Aug 7 17:41:22 CEST 2008
Le jeudi 7 août 2008 02:16:13 Pierre d'Herbemont, vous avez écrit :
> What is the justification of this?
>
> Poll is indeed broken on OS X.
The inconsistent use of POLLHUP or POLLIN at end-of-stream comes from
different intrepretations of the POSIX standard. In any case, UDP has no
end-of-stream, so it does not matter for SAP. On top of that, VLC is proof
against mixing POLLHUP and POLLIN.
If someone still wants to use sucky select() isntead of poll() for some sucky
platform[1], I do not care so long as they do not introduce security holes,
which the hereby reverted commit did.
[1] For the reference, even Windows has poll nowadays (though not in VLC).
--
Rémi Denis-Courmont
http://www.remlab.net/
More information about the vlc-devel
mailing list