It's not documented, but int fd; ldap_get_option(ld, LDAP_OPT_DESC, &fd); reads the file descriptor
This won't work in all cases. I just took a quick look at the code and the way this fd is used (it is actually something stored inside Sockbuf further down) and there seem to be cases, not all too uncommon, where this file descriptor won't be the one doing the IO. So your select call may be complitely oblivious to any new data on the LDAP handle if you use this fd. --Ugen