Thanks, Jp, your example is helpful. I will give it a try. (Note to other readers -- ldap.search_s() is the synchronous (blocking) method. The async method is ldap.search(). I've been using ldap.search_s() up until now and my fingers automatically typed that.) Allan