 <p>It waits for the given timeout and then returns 0, or it returns sooner with <code>EINTR</code>. If you think about it, this makes perfect sense and is in fact what the documentation says, even though it does not say it explicitly. The same thing happens if all the sets are NULL or have no bits less than <code>nfds</code> set in them.</p>