FAQ
Hello. Like a good portion of the Internet, I am running into issues with
AOL users hitting the "spam" button in their AOL email client for legitimate
list traffic. I am wanting to stop these users from re-subscribing to any
lists but as far as I can tell, Mailman does not currently have a global
blocklist.

Looking at the source, I see the following on line 394 of "MailList.py":

self.ban_list = []

I am wondering if a possible solution here would be to initialize this value
to include a list of banned email address, either via an included value from
Defaults.py or by hardcoding the values into to the above array?

self.ban_list = [ 'clueless at aol.com', 'bad_gui_design at aol.com' ]

What I am unclear of is whether this means that every message has to be
scanned through this list or whether it would only apply to subscribe
requests.

Another potential spot would be in "AddMember()". Perhaps just adding a new
function to MailList.py which checks if the address is in a global array and
raises an error if this is the case?

If anyone has already cracked this or if there is already an existing function
to support this please point me at the FAQ or docs.

Cheers,

Ron

--
islandnet.com
http://www.islandnet.com
support at islandnet.com
ph: (250) 383-0096 fax: (250) 383-6698

Search Discussions

  • Mark Sapiro at May 2, 2007 at 3:58 am

    Ron Brogden wrote:
    Looking at the source, I see the following on line 394 of "MailList.py":

    self.ban_list = []

    I am wondering if a possible solution here would be to initialize this value
    to include a list of banned email address, either via an included value from
    Defaults.py or by hardcoding the values into to the above array?

    self.ban_list = [ 'clueless at aol.com', 'bad_gui_design at aol.com' ]

    You can do either. The 'standard' way to do it would be to define

    DEFAULT_BAN_LIST = []

    in Defaults.py (actually Defaults.py.in for a patch) and then put your
    list

    DEFAULT_BAN_LIST =['clueless at aol.com',
    'bad_gui_design at aol.com']

    in mm_cfg.py and put

    self.ban_list = mm_cfg.DEFAULT_BAN_LIST

    in MailList.py.

    What I am unclear of is whether this means that every message has to be
    scanned through this list or whether it would only apply to subscribe
    requests.

    It only applies to subscription requests, and since 2.1.7, invitations,
    subscription confirmations and changes of address.

    However, the above changes will only initialize the ban_list for new
    lists. You will still need to use config_list or whatever to update
    existing lists.

    Another potential spot would be in "AddMember()". Perhaps just adding a new
    function to MailList.py which checks if the address is in a global array and
    raises an error if this is the case?

    Yes. This would have the addvantage of not requiring the various list's
    ban_list to be updated with every change and seems a better solution
    for your purpose.

    I suggest however that the place to make this change is not
    AddMember(), but GetBannedPattern().

    --
    Mark Sapiro <msapiro at value.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupmailman-users @
categoriespython
postedMay 1, '07 at 6:03p
activeMay 2, '07 at 3:58a
posts2
users2
websitelist.org

2 users in discussion

Mark Sapiro: 1 post Ron Brogden: 1 post

People

Translate

site design / logo © 2022 Grokbase