You can subscribe to this list here.
2000 |
Jan
|
Feb
(34) |
Mar
(9) |
Apr
|
May
(2) |
Jun
(14) |
Jul
(67) |
Aug
(34) |
Sep
(5) |
Oct
(20) |
Nov
(22) |
Dec
(31) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(15) |
Feb
(16) |
Mar
(20) |
Apr
(13) |
May
(72) |
Jun
(42) |
Jul
(41) |
Aug
(11) |
Sep
(19) |
Oct
(67) |
Nov
(59) |
Dec
(57) |
2002 |
Jan
(74) |
Feb
(69) |
Mar
(34) |
Apr
(55) |
May
(47) |
Jun
(74) |
Jul
(116) |
Aug
(68) |
Sep
(25) |
Oct
(42) |
Nov
(28) |
Dec
(52) |
2003 |
Jan
(19) |
Feb
(18) |
Mar
(35) |
Apr
(49) |
May
(73) |
Jun
(39) |
Jul
(26) |
Aug
(59) |
Sep
(33) |
Oct
(56) |
Nov
(69) |
Dec
(137) |
2004 |
Jan
(276) |
Feb
(15) |
Mar
(18) |
Apr
(27) |
May
(25) |
Jun
(7) |
Jul
(13) |
Aug
(2) |
Sep
(2) |
Oct
(10) |
Nov
(27) |
Dec
(28) |
2005 |
Jan
(22) |
Feb
(25) |
Mar
(41) |
Apr
(17) |
May
(36) |
Jun
(13) |
Jul
(22) |
Aug
(12) |
Sep
(23) |
Oct
(6) |
Nov
(4) |
Dec
|
2006 |
Jan
(11) |
Feb
(3) |
Mar
(5) |
Apr
(22) |
May
(1) |
Jun
(10) |
Jul
(19) |
Aug
(7) |
Sep
(25) |
Oct
(23) |
Nov
(5) |
Dec
(27) |
2007 |
Jan
(25) |
Feb
(17) |
Mar
(44) |
Apr
(8) |
May
(33) |
Jun
(31) |
Jul
(42) |
Aug
(16) |
Sep
(12) |
Oct
(16) |
Nov
(23) |
Dec
(73) |
2008 |
Jan
(26) |
Feb
(6) |
Mar
(46) |
Apr
(17) |
May
(1) |
Jun
(44) |
Jul
(9) |
Aug
(34) |
Sep
(20) |
Oct
(2) |
Nov
(4) |
Dec
(16) |
2009 |
Jan
(14) |
Feb
(3) |
Mar
(45) |
Apr
(52) |
May
(34) |
Jun
(32) |
Jul
(24) |
Aug
(52) |
Sep
(22) |
Oct
(23) |
Nov
(19) |
Dec
(10) |
2010 |
Jan
(10) |
Feb
(13) |
Mar
(22) |
Apr
(9) |
May
(1) |
Jun
(1) |
Jul
(8) |
Aug
(9) |
Sep
(10) |
Oct
(1) |
Nov
(2) |
Dec
(3) |
2011 |
Jan
|
Feb
(18) |
Mar
(39) |
Apr
(5) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Chris D. <pa...@ft...> - 2009-11-04 02:44:02
|
On Wed, Nov 04, 2009 at 10:27:15AM +0800, Zhang Huangbin wrote: > Hi, list. > > it seems .modify() or .modify_s() can only modify one dn in one time. It doesn't just seem, it *IS* > How can i modify several dn in one time? Issue multiple .modify()s. Collect the .result()s to make sure they worked. > > Such as ldapadd command: > > # ldapadd -x -D 'cn=Manager,dc=xxx,dc=xxx' -wpasswd -f new.ldif > > Content of new.ldif: > > dn: cn=vmail,dc=xxx,dc=xxx > changetype: modify > add: cn > cn: newCN > cn: newCN2 > -- > dn: cn=user01,dc=xxx,dc=xxx > changetype: modify > cn: newCN > cn: newCN2 That shouldn't work either. ldapmodify -c <INSERT YOUR AUTH PARAMETERS HERE> << EEOOTT # This is one LDIF record dn: cn=foo,dc=xxx changetype: modify add: sn sn: baz - #This is a SECOND LDIF record dn: cn=bar,dc=xxx changetype: modify add: sn sn: quf - > > > > -- > Best Regards. > > Zhang Huangbin > > - Open Source Mail Server Solution for Red Hat(R) Enterprise Linux, > CentOS, Debian, Ubuntu: http://www.iredmail.org/ > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > Python-LDAP-dev mailing list > Pyt...@li... > https://lists.sourceforge.net/lists/listinfo/python-ldap-dev -- Chris Dukes "In cynicism she's about 35" -- Terry Pratchett's "Hog Father" |
From: Zhang H. <zhb...@gm...> - 2009-11-04 02:27:36
|
Hi, list. it seems .modify() or .modify_s() can only modify one dn in one time. How can i modify several dn in one time? Such as ldapadd command: # ldapadd -x -D 'cn=Manager,dc=xxx,dc=xxx' -wpasswd -f new.ldif Content of new.ldif: dn: cn=vmail,dc=xxx,dc=xxx changetype: modify add: cn cn: newCN cn: newCN2 -- dn: cn=user01,dc=xxx,dc=xxx changetype: modify cn: newCN cn: newCN2 -- Best Regards. Zhang Huangbin - Open Source Mail Server Solution for Red Hat(R) Enterprise Linux, CentOS, Debian, Ubuntu: http://www.iredmail.org/ |
From: Zhang H. <mic...@gm...> - 2009-11-03 14:02:06
|
Hi, list. it seems .modify() or .modify_s() can only modify one dn in one time. How can i modify several dn in one time? Such as ldapadd command: # ldapadd -x -D 'cn=Manager,dc=xxx,dc=xxx' -wpasswd -f new.ldif Content of new.ldif: dn: cn=vmail,dc=xxx,dc=xxx changetype: modify add: cn cn: newCN cn: newCN2 -- dn: cn=user01,dc=xxx,dc=xxx changetype: modify cn: newCN cn: newCN2 -- Best Regards. Zhang Huangbin - Open Source Mail Server Solution for Red Hat(R) Enterprise Linux, CentOS, Debian, Ubuntu: http://www.iredmail.org/ |
From: Anil <an...@en...> - 2009-11-03 06:13:29
|
I am looking to do connection pooling and am thinking of doing something like http://www.sqlalchemy.org/docs/05/reference/sqlalchemy/pooling.html Can you guys give some advice and/or better yet, has someone already done this? Thanks |
From: Michael S. <mi...@st...> - 2009-10-31 20:08:07
|
Find a new release of python-ldap: http://www.python-ldap.org/ python-ldap provides an object-oriented API to access LDAP directory servers from Python programs. It mainly wraps the OpenLDAP 2.x libs for that purpose. Additionally it contains modules for other LDAP-related stuff (e.g. processing LDIF, LDAPURLs and LDAPv3 schema). Ciao, Michael. -- Michael Ströder E-Mail: mi...@st... http://www.stroeder.com |
From: Michael S. <mi...@st...> - 2009-10-23 09:23:16
|
Chris Dukes wrote: > While rewriting a nasty perl LDAP sync program in python I encountered > one quirk with python-ldap that made my life a bit difficult. When > doing asynchronous searches an ldap exception in result3() doesn't > include 'msgid' in the info dict. Since I'm tracking pending work by > the msgid of the search, having the msgid in the exception is very > useful for removing work items. This is only useful if you sent several LDAP operations with asynchronous methods and then poll *all* results with LDAPObject.result3(msgid=-1). This is a very special use-case. I'd be curious to see some code illustrating this *before* applying your patch. BTW: I still have an idea to eliminate all the thread-locking in LDAPObject by serializing all calls into _ldap module within the wrapper class. For this your patch could be useful. Still I think about some implications of this approach (polling results is CPU intensive, how is invoking result triggered without the need for a separate thread). So again your client code could be an useful inspiration for this. Ciao, Michael. |
From: Michael S. <mi...@st...> - 2009-10-23 09:10:35
|
Chris Dukes wrote: > The following patch allows the LDAP_OPT_X_TLS_PROTOCOL_MIN to work with > libldap2-dev 2.4.9-0ubuntu0 Thanks. I've committed this patch in HEAD. Please test. Ciao, Michael. |
From: Michael S. <mi...@st...> - 2009-10-22 20:23:54
|
Chris Dukes wrote: > > I went to check my patch to provide msgid in a result exception against > 2.3.10. > I have found a problem on constants.c > [..] > Modules/constants.c:185: error: ‘LDAP_OPT_X_TLS_PROTOCOL_MIN’ undeclared > (first use in this function) Should be #ifdef LDAP_OPT_X_TLS_PROTOCOL_MIN add_int(d,OPT_X_TLS_PROTOCOL_MIN); #endif Will committ the patch later. Thanks for testing! Ciao, Michael. |
From: Chris D. <pak...@gm...> - 2009-10-22 17:22:45
|
And here is the patch cleaned up against python-ldap 2.3.10 Thanks, Chris Dukes |
From: Chris D. <pak...@gm...> - 2009-10-22 17:13:56
|
The following patch allows the LDAP_OPT_X_TLS_PROTOCOL_MIN to work with libldap2-dev 2.4.9-0ubuntu0 Thanks, Chris Dukes |
From: Chris D. <pak...@gm...> - 2009-10-22 16:29:22
|
Michael, I went to check my patch to provide msgid in a result exception against 2.3.10. I have found a problem on constants.c gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DHAVE_LIBLDAP_R -DHAVE_SASL -DHAVE_TLS -DLDAPMODULE_VERSION=2.3.10 -IModules -I/usr/local/openldap-2.3/include -I/usr/include/sasl -I/usr/include/python2.5 -c Modules/constants.c -o build/temp.linux-i686-2.5/Modules/constants.o Modules/constants.c: In function ‘LDAPinit_constants’: Modules/constants.c:185: error: ‘LDAP_OPT_X_TLS_PROTOCOL_MIN’ undeclared (first use in this function) Modules/constants.c:185: error: (Each undeclared identifier is reported only once Modules/constants.c:185: error: for each function it appears in.) error: command 'gcc' failed with exit status 1 This error is repeatable with a pristine checkout before I applied my patch. This #define is not present in libldap2-dev 2.4.9-0ubuntu0 (Which ships with Ubuntu Hardy), but is present in libldap2-dev 2.4.17-2 (Debian Sid). I am currently disinclined to update libldap2 until a new ubuntu LTS is released, but I do make use of python-virtualenv when I need a python environment that is newer than the one that ships with ubuntu Hardy. Thanks, Chris Dukes |
From: Chris D. <pak...@gm...> - 2009-10-22 14:08:34
|
While rewriting a nasty perl LDAP sync program in python I encountered one quirk with python-ldap that made my life a bit difficult. When doing asynchronous searches an ldap exception in result3() doesn't include 'msgid' in the info dict. Since I'm tracking pending work by the msgid of the search, having the msgid in the exception is very useful for removing work items. Here is a patch to the 'C' code of python-ldap to provide msgid. Thanks, Chris Dukes |
From: Chris D. <pa...@ft...> - 2009-10-21 21:16:40
|
I'm trying to create a python port of a perl script to update an LDAP directory against an LDIF file. As I read LDIF entries I do an mesgid = l.search(dn, ldap.SCOPE_BASE, '(objectclass=*)', ['*']) I am currently keeping the ldif entries in a dict indexed by the msgid so I may retrieve them for comparison as they come back from l.result3(timeout=0). As this is for updates, I am expecting the occasional ldap.NO_SUCH_OBJECT exception. Unfortunately, this exception does not provide the msgid associated with the ldap.NO_SUCH_OBJECT. Would it be possible for the msgid to be included in the dictionary that also has {'matched': 'dc=COM', 'desc': 'No such object'} -- Chris Dukes "In cynicism she's about 35" -- Terry Pratchett's "Hog Father" |
From: Fintan M. <fin...@gm...> - 2009-10-18 20:55:24
|
Hi Guruprasad Had the same issue and someone was kind enough to point me in the right direction. Here's what I was told "A uid has to be changed into a legible format Chapter 3 of RFC 4515 (LDAPv3 filter strings) starts with: The string representation of an LDAP search filter is a string of UTF-8 [RFC3629] encoded Unicode characters [Unicode] [..] So please have a look at RFC 4515 to find out how to escape hex values in a search filter. Function ldap.filter.escape_filter_chars() is helpful for that." Thanks fintan On Sunday 20 September 2009 15:02:14 Guruprasad wrote: > Hi, > I have been trying to write a function to search a LDAP directory by > using the python-ldap APIs. > Here is the code I have written: > > <snip> > def getNextUid(): > uidList=[] > try: > l=ldap.initialize(ldap_host) > l.bind_s(ldap_admin_dn,ldap_admin_pass) > > ldap_result=l.search(ldap_base_dn,ldap.SCOPE_SUBTREE,'cn=*',['uidNumber']) > while 1: > result_type, result_data=l.result(ldap_result,0) > if (result_data == []): > break > a=result_data[0][1]['uidNumber'] > print a > except ldap.SERVER_DOWN: > print "LDAP server down" > </snip> > > What I am trying to do in this piece of code is get the list of the > values of 'uidNumber' attribute. The search operation returns a list > containing a tuple. The tuple contains the DN as one value and a > dictionary with uidNumber and its value. I am trying to extract the > value of the uidNumber. I found that result_data was a dictionary > having a key 'uidNumber', but when I try to print its value, I get a > KeyError. Strangely, when I print result_data.keys(), 'uidNumber' is > present. > > > Thank you. > > Regards, > Guruprasad. > > --------------------------------------------------------------------------- > --- Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register > now! http://p.sf.net/sfu/devconf > _______________________________________________ > Python-LDAP-dev mailing list > Pyt...@li... > https://lists.sourceforge.net/lists/listinfo/python-ldap-dev > |
From: Michael S. <mi...@st...> - 2009-10-16 10:49:20
|
Michael Ströder wrote: > There are some fixes waiting to be released as version 2.3.10. > > See current CHANGES: > http://python-ldap.cvs.sourceforge.net/viewvc/python-ldap/python-ldap/CHANGES > > So please test current CVS HEAD on various platforms. Did anybody here test anything? Ciao, Michael. |
From: Michael S. <mi...@st...> - 2009-10-13 08:51:20
|
Sean Burford wrote: > > I've been working on implementing an RFC 4533 syncrepl consumer using > python-ldap. I can't work out why I can't get the SyncDoneControl that > is returned with the LDAP_RES_SEARCH_RESULT through python-ldap. Sean, could you please re-try with current python-ldap CVS HEAD. I've checked in a change --------------------------- snip --------------------------- * l_ldap_result3(): controls are now parsed for all response types (SF#2829057) --------------------------- snip --------------------------- Ciao, Michael. |
From: Michael S. <mi...@st...> - 2009-10-08 18:40:07
|
HI! There are some fixes waiting to be released as version 2.3.10. See current CHANGES: http://python-ldap.cvs.sourceforge.net/viewvc/python-ldap/python-ldap/CHANGES So please test current CVS HEAD on various platforms. Ciao, Michael. |
From: Michael S. <mi...@st...> - 2009-10-08 18:27:40
|
HI! Please test the following change in CVS HEAD with your code which makes use of controls received in LDAP responses. My short test was with Demo/page_control.py which seems to work. http://python-ldap.cvs.sourceforge.net/viewvc/python-ldap/python-ldap/Modules/LDAPObject.c?r1=1.87&r2=1.88 I have no clue why the removed if-statement was there at all. See also the tracker entry with the feature request: Support for reading controls sent with LDAP_RES_SEARCH_ENTRY - ID: 2829057 http://sourceforge.net/tracker/?func=detail&aid=2829057&group_id=2072&atid=352072 Ciao, Michael. |
From: Waldemar O. <wal...@gm...> - 2009-10-07 16:41:36
|
2009/10/7 phobie <sfl...@sa...>: > Michael Ströder wrote: >> Which Win32 build of python-ldap are you using? It seems it requests a >> separate DLL. > > I wrote "main(['python_ldap-2.3.8-py2.6-win32.egg'])" in my first mail. > The pypi exe-installers does not seem to have a silent install option... > If you insists on silent option and do not depend on ldap.sasl try the MSI installer with /q option. http://www.osuch.org/python-ldap-2.3.9.win32-py2.6.msi |
From: phobie <sfl...@sa...> - 2009-10-07 15:26:22
|
Michael Ströder wrote: > Which Win32 build of python-ldap are you using? It seems it requests a > separate DLL. I wrote "main(['python_ldap-2.3.8-py2.6-win32.egg'])" in my first mail. Got that file from http://svn.kmrc.de/download/distribution/contrib/python_ldap-2.3.8-py2.6-win32.egg . (The .egg builds linked from http://python-ldap.org/download.shtml .) The pypi exe-installers does not seem to have a silent install option... Per |
From: Michael S. <mi...@st...> - 2009-10-07 15:16:26
|
phobie wrote: > Michael Ströder schrieb: >> \\somehost\someshare\python2.6\python.exe -v -c "import ldap" > > File attached! > (converted to utf-8 and translated to english) Which Win32 build of python-ldap are you using? It seems it requests a separate DLL. Ciao, Michael. |
From: phobie <sfl...@sa...> - 2009-10-07 15:10:28
|
Michael Ströder schrieb: > \\somehost\someshare\python2.6\python.exe -v -c "import ldap" File attached! (converted to utf-8 and translated to english) > I'm not too familiar with using Python under Windows. I suspect that there > might also be some registry settings for setting the lib path. It's a bit suspicious because other c-modules like win32api, sqlite3 or ssl import flawlessly. Greets Per |
From: Michael S. <mi...@st...> - 2009-10-07 14:02:10
|
phobie wrote: > C:\> \\somehost\someshare\python2.6\python.exe >>>> import ldap > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > File > "\\somehost\someshare\python2.6\lib\site-packages\python_ldap-2.3.8-py2.6-win32.egg\ldap\__init__ > .py", line 22, in <module> > from _ldap import * > ImportError: DLL load failed: The specified module could not be found. Try -v to get more output: \\somehost\someshare\python2.6\python.exe -v -c "import ldap" I'm not too familiar with using Python under Windows. I suspect that there might also be some registry settings for setting the lib path. Ciao, Michael. |
From: phobie <sfl...@sa...> - 2009-10-07 13:54:55
|
I am trying to use Python with python-ldap on a CIFS share. While Python works fine the import of ldap fails. Installed Active Python 2.6.2.2. Copied the Python dir to the share. Copied python26.dll pythoncom26.dll pywintypes26.dll to the new Python dir. Uninstalled the local Python! C:\> \\somehost\someshare\python2.6\python.exe ActivePython 2.6.2.2 (ActiveState Software Inc.) based on Python 2.6.2 (r262:71600, Apr 21 2009, 15:05:37) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import sys >>> sys.path.insert(0,<path to setuptools>) >>> from setuptools.command.easy_install import main >>> main(['setuptools-0.6c9-py2.6.egg']) >>> main(['python_ldap-2.3.8-py2.6-win32.egg']) Everything installed fine but "import ldap" fails! C:\> \\somehost\someshare\python2.6\python.exe >>> import ldap Traceback (most recent call last): File "<stdin>", line 1, in <module> File "\\somehost\someshare\python2.6\lib\site-packages\python_ldap-2.3.8-py2.6-win32.egg\ldap\__init__ .py", line 22, in <module> from _ldap import * ImportError: DLL load failed: The specified module could not be found. >>> import sys >>> sys.path[2] '\\\\somehost\someshare\\python2.6\\lib\\site-packages\\python_ldap-2.3.8-py2.6-win32.egg' >>> import os >>> os.listdir(sys.path[2]) ['dsml.py', 'dsml.pyc', 'dsml.pyo', 'EGG-INFO', 'ldap', 'ldapurl.py', 'ldapurl.pyc', 'ldapurl.pyo', 'ldif.py', 'ldif.pyc ', 'ldif.pyo', '_ldap.py', '_ldap.pyc', '_ldap.pyd', '_ldap.pyo'] Actually it does not matter if the python2.6 dir is on a CIFS-share or on some other dir like D:\python2.6\. How to fix that Problem? Regards, Per |
From: Avinash S. <av...@su...> - 2009-10-06 12:25:30
|
Michael Ströder wrote: > Avinash Sultanpur wrote: > >> What is the equivalent of running the below command in python-ldap? >> >> ldappasswd -x -D <root_dn> -w <root_pw> -s secret_password \ >> uid=user000,ou=People,dc=example,dc=com >> > > ldap_conn = ldap.initialize(...) > ldap_conn.simple_bind_s('<rootdn>,'<rootpw>') > ldap_conn.passwd_s('uid=user000,ou=People,dc=example,dc=com',None,'<newpassword>') > Thanks Michael. I didn't realize I could use 'None' for the old password! -Avinash |