Totally stumped on how to use async.
RyanP at foxracing.com
Thu Jan 13 18:47:52 CET 2005
I would like to recall issue #2, I'm an idiot and it DOES work. But I'm still stumped on getting all my results.
From: python-ldap-dev-admin at lists.sourceforge.net [mailto:python-ldap-dev-admin at lists.sourceforge.net] On Behalf Of Ryan Parrish
Sent: Thursday, January 13, 2005 9:39 AM
To: python-ldap-dev at lists.sourceforge.net
Subject: Totally stumped on how to use async.
Let me preface by saying that I am kind of a newbie with LDAP.
Here is my problem, I would like to use python-ldap to query the proxyAddresses on my AD domain controller, and eventually write it out to a file. But since this is AD I have to limit my queries to under 1000 results.
I am trying to mimic the functionality of this Perl script http://www-personal.umich.edu/~malth/gaptuning/postfix/getadsmtp.pl
1.) When I use the example on the site for asynchronies queries, I don't get all the results - I get 2000 (which I don't understand why, but there is actually 3106)http://homepage.mac.com/mengelhart/python-ldap-samples.html#search
2.) The way I understand 'retrieveAttribuites' to work would be that I only retrieve one particular attribute for each 'cn', and that is how it appears to work in the 'directoyassist' 3rd party script off the site. So I figured that I could put ['proxyAddresses'] in there and only receive the proxyAddresses, but when I use anything except None I get no results back.
Here is what I have, it is almost a verbatim copy of the example, if you could just give me some pointers on how to use the async queries I will be on my way. Thanks.
PS I have tried on both my Linux and win box and get the exact same results.
from string import split
l = ldap.open("10.11.2.33")
l.simple_bind_s('A user name','*****') except ldap.LDAPError, e:
baseDN = "dc=foxracing,dc=com"
searchScope = ldap.SCOPE_SUBTREE
retrieveAttributes = None
#sizelimit = 990
searchFilter = "(& (mailnickname=*) (| (&(objectCategory=person) \
ldap_result_id = l.search(baseDN, searchScope, searchFilter, retrieveAttributes)
result_type, result_data = l.result(ldap_result_id, 0)
if (result_data == ):
if result_type == ldap.RES_SEARCH_ENTRY:
for entry in result_data['proxyAddresses']:
if 'SMTP' in entry:
email = "%s OK" % (split(entry, ':'))
except ldap.LDAPError, e:
ryanp at foxracing.com
408-776-8633 extension 1229
Please direct all support questions to - (¯`·.¸¸.-> itsupport at foxracing.com
More information about the python-ldap