Hello Mark, I am posting the matches_p function below. I believe the problem is an off-shoot of the lce/cpe problem with the LDAPMembership adapter you helped me with earlier. I did get it to work by changing the condition in matches_p from
if mother.members.has_key(sender): to if mother.isMember(sender): It works for both statically created lists and the ldap dynamically created lists. Here is the complete matches_p function (from Mailman v2.1.9 with the @list patch applied and my changes): def matches_p(sender, nonmembers): # First strip out all the regular expressions plainaddrs = [addr for addr in nonmembers if not addr.startswith('^')] addrdict = Utils.List2Dict(plainaddrs, foldcase=1) if addrdict.has_key(sender): return 1 # Now do the regular expression matches for are in nonmembers: if are.startswith('^'): try: cre = re.compile(are, re.IGNORECASE) except re.error: continue if cre.search(sender): return 1 elif are.startswith('@'): try: mother = MailList(are[1:], lock=0) # Changed the condition to use the list's isMember method --CN 28-Sep-2009 # if mother.members.has_key(sender.lower()): if mother.isMember(sender): return 1 except Errors.MMUnknownListError: syslog('error', 'filter references non-existent list %s', are[1:]) return 0 Is the change I made the correct way of fixing the problem? If so, should other places where 'mlist.members.has_key(variable)' also be changed? I have also added the 'accept_special_posters' attribute I mentioned on the Mailman-users list. Can you take at least a quick look at the changes to make sure I didn't mess things up to bad? I have the diffs for MailList.py, versions.py, Version.py, Gui/Privacy.py and Handler/Moderate.py. Thanks for your help, Mark. Chris Mark Sapiro wrote: > Chris Nulk wrote: > >> I believe I have narrowed down the problem to the 'matches_p' function in >> Moderate.py. >> > > Can you post your matches_p definitiopn? > > _______________________________________________ Mailman-Developers mailing list Mailman-Developers@python.org http://mail.python.org/mailman/listinfo/mailman-developers Mailman FAQ: http://wiki.list.org/x/AgA3 Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ Unsubscribe: http://mail.python.org/mailman/options/mailman-developers/archive%40jab.org Security Policy: http://wiki.list.org/x/QIA9