Net::LDAP supports non-blocking IO using select(2). It also supports
LDAPS by using IO::Socket::SSL. The problem is that select(2) isn't
enough to see if there is any data on an SSL socket - one must also
check if there is any pending data in the SSL buffer that was already
read from the socket.
Patch by firstname.lastname@example.org