Kabilan L wrote: > I am trying to configure LDAPMemberAdaptor-V3.0 in my Ldap Server. >I copied extend.py and LDAPMemberships.py to /usr/lib/mailman/Mailman/.
I doubt that this has anything to do with your problem, but the extend.py file should not be in the /usr/lib/mailman/Mailman/ directory. A list specific extend.py should be in the /var/lib/mailman/lists/<listname>/ directory as below. >I also copied extend.py to /var/lib/mailman/lists/staff(listname)/. >I also added these things in MailList.py > >import extend Now you do have a problem. The above import is wrong. The MailList class __init__ method actually runs the list's extend.py when the list is instantiated. You definitely do not want to import extend in MailList.py. ># other useful classes >from Mailman.LDAPMemberships import LDAPMemberships >so use LDAPMemberships.py for OldStyleMemberships.py . Wrong again. The list's extend.py takes care of importing LDAPMemberships and setting mlist._memberadaptor to the list's LDAPMemberships instance. You don't make any changes in MailList.py. Just put an extend.py with the specific LDAP information for that list in that list's list/<listname>/ directory, and put LDAPMemberships.py in the Mailman/ directory, and the extend.py mechanism already built into MailList.py does the rest. > >I have following in extend.py > >from Mailman.LDAPMemberships import LDAPMemberships >def extend(list): > ldap = LDAPMemberships(list) > ldap.ldapsearch = "(uid=recipient)" # your LDAP search here > ldap.ldapserver = "127.0.0.1" # your LDAP server > ldap.ldapbasedn = "dc=domain dc=com" # your base DN > ldap.ldapbinddn = 'cn=Manager,dc=domain,dc=com' # bind DN that can >access 'mail' field > ldap.ldappasswd = 'xxxx' # bind password for ldapbinddn > ldap.LDAP_URL = "ldap://ldap.domain.com:389/" > ldap.LDAP_MAIL_ATTRS = ("mail",) > ldap.LDAP_LOCALDOMAIN = "domain.com" > ldap.LDAP_REALNAME_ATTR = "cn" > ldap.LDAP_MAILMEMBER_ATTRS = ("rfc822MailMember",) > ldap.LDAP_MEMBER_ATTRS = ("uniqueMember","memberUID") > ldap.LDAP_OWNER_ATTR = "owner" > ldap.LDAP_LIST_RDN_ATTR = "cn" > ldap.LDAP_LIST_CLASSFILTER = >"(|(objectclass=groupOfUniqueNames)(objectclass=nisMailAlias)(objectclass=groupOfNames))" > ldap.LDAP_BASE = "ou=Group,dc=domain,dc=com" > list._memberadaptor = ldap > Looks OK. I don't know the LDAP stuff, but the stuff to make it interface properly as the MemberAdaptor for the list is there, namely >from Mailman.LDAPMemberships import LDAPMemberships >def extend(list): > ldap = LDAPMemberships(list) and > list._memberadaptor = ldap -- Mark Sapiro <[EMAIL PROTECTED]> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan ------------------------------------------------------ Mailman-Users mailing list Mailman-Users@python.org http://mail.python.org/mailman/listinfo/mailman-users Mailman FAQ: http://www.python.org/cgi-bin/faqw-mm.py Searchable Archives: http://www.mail-archive.com/mailman-users%40python.org/ Unsubscribe: http://mail.python.org/mailman/options/mailman-users/archive%40jab.org Security Policy: http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq01.027.htp