bakerstu/openmrn

Remove pselect() from code base

Opened this issue · 0 comments

pselect() is a POSIX function which in reality is not very portable. Even when present, it has a race condition on some systems due to the way in which it is implemented. pselect() should be replaced with select() and a pipe for asynchronous wakeup from other threads.

Here is are several links detailing pselect issues on Mac OS X, for example:

https://stackoverflow.com/questions/14045801/different-pselect-behaviour-on-osx-vs-linux
https://news.ycombinator.com/item?id=12867456