Danil Smirnov wrote: > >2009/4/16 Mark Sapiro <m...@msapiro.net> > >> >> You need to individually mark each request "discard" in the admindb >> interface and "Submit All Data". There is no bulk removal method or >> tool for subscription requests. You need to do this often enough to >> prevent the number of outstanding requests from growing so large that >> the admindb interface times out before loading the page. > > >But I've got 1 thousand spammer`s request in 3 days!!! May be I can just >switch off subscription service at all? My list is announcement list so I >need no subscription service... Please advice how can I do that...
I suspect what is happening is that spammers are not deliberately trying to subscribe in order to spam your list. Rather, I think that spammers are just spamming your LISTNAME-subscribe and LISTNAME-join addresses resulting in subscription requests. There are a few things you can do. You can just periodically discard all requests by removing the lists/LISTNAME/request.pck file. You can modify cron/checkdbs [1] to apply max_days_to_hold to subscribe requests as well as messages. Depending on your MTA, you can just remove the aliases for LISTNAME-request and LISTNAME-join. This is probably best as it will return a failure to the spammer at SMTP time [1] To modify cron/checkdbs, add the line heldmsgs.extend(mlist.GetSubscriptionIds()) to the definition def auto_discard(mlist): # Discard old held messages discard_count = 0 expire = mlist.max_days_to_hold * 86400 # days heldmsgs = mlist.GetHeldMessageIds() if expire and len(heldmsgs): for id in heldmsgs: if now - mlist.GetRecord(id)[0] > expire: mlist.HandleRequest(id, mm_cfg.DISCARD) discard_count += 1 mlist.Save() return discard_count so it becomes def auto_discard(mlist): # Discard old held messages discard_count = 0 expire = mlist.max_days_to_hold * 86400 # days heldmsgs = mlist.GetHeldMessageIds() heldmsgs.extend(mlist.GetSubscriptionIds()) if expire and len(heldmsgs): for id in heldmsgs: if now - mlist.GetRecord(id)[0] > expire: mlist.HandleRequest(id, mm_cfg.DISCARD) discard_count += 1 mlist.Save() return discard_count -- Mark Sapiro <m...@msapiro.net> 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://wiki.list.org/x/AgA3 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://wiki.list.org/x/QIA9