[Mailman-Developers]
Re: [Mailman-Users] Need a patch written for 2.1 for post-only
access.
Jon Carnes
jonc at nc.rr.com
Mon Jan 27 10:29:05 EST 2003
The functionality was moved from the Hold.py module over to the
Moderate.py module. From there it is almost identical.
I applied the old patch by hand to that module and I'm testing it now.
Jon Carnes
On Mon, 2003-01-27 at 09:27, Marc Perkel wrote:
> I'm not a Python programmer but I need a patch written to add a feature that
> someone had written a patch for in version 2.0.
>
> The patch called a "post-only" patch allowed me to create a list called
> "post-only" and members of this list were allowed to post to all other lists.
>
> I am the systems administration for the Electronic Frontier Foundation
> (http://www.eff.org). We are currently running 2.0 with this patch. The reason
> we need it is because we are running about 65 internal lists and several of our
> members have multiple email addresses they post from. The burden of adding
> several hundred alieases and maintaining them across this many lists would be
> too much to deal with. I have upgraded to 2.1 on my own personal server and I
> feel that it would greatly benefit EFF to upgrade to 2.1. But - I can not do it
> until I have this patch.
>
> I am therefore asking that someone out there write this patch. If you write it -
> I will publicly thank you in our newsletter that goes out to about 30,000 of our
> members. I offer 15 minutes of fame, and - you'll be helping us get important
> work done. EFF relies heavilly on Mailman.
>
> Below is the code for the current patch for 2.0. It looks to me that doing this
> for 2.1 would be trivial for someone who knew what they were doing. I would
> REALLY appreciate it if someone were to volunteer to do this. Alternatively - I
> would be willing to pay someone out of my own pocket - and donate the code back
> to the public - if I can't find someone to do it for free.
>
> Thanks in Advance
>
> Marc Perkel
> /root
> EFF
>
> Here's the current 2.0 patch
>
> --- mailman-2.0beta5/Mailman/Handlers/Hold.py.postonly Tue Aug 1 19:02:28 2000
> +++ mailman-2.0beta5/Mailman/Handlers/Hold.py Sat Aug 5 18:31:50 2000
> @@ -43,6 +43,8 @@
> from Mailman import Message
> from Mailman import mm_cfg
> from Mailman import Utils
> +from Mailman import MailList
> +from Mailman import Errors
> from Mailman.Logging.Syslog import syslog
>
>
> @@ -104,6 +106,13 @@
>
>
>
> +def CheckPostOnly (sender):
> + try:
> + m = MailList.MailList('post-only', lock=0)
> + return m.IsMember (sender)
> + except Errors.MMListError:
> + return 0
> +
> def process(mlist, msg, msgdata):
> if msgdata.get('approved'):
> return
> @@ -141,7 +150,8 @@
> if mlist.member_posting_only:
> posters = Utils.List2Dict(map(string.lower, mlist.posters))
> if not mlist.IsMember(sender) and \
> - not Utils.FindMatchingAddresses(sender, posters):
> + not Utils.FindMatchingAddresses(sender, posters) and \
> + not CheckPostOnly(sender):
> # the sender is neither a member of the list, nor in the list of
> # explicitly approved posters
> hold_for_approval(mlist, msg, msgdata, NonMemberPost)
>
>
More information about the Mailman-Developers
mailing list