
We've been using mailman for a number of years and are very happy with it, especially the integration that's possible with Exim.
However - I've recently met a problem that seems to be a common theme in the mailing lists but without an accepted solution so I thought I just check with the experts.
We wish to have a size limit applied to any message sent to our mailing lists. This is going to be determined by our mailing lists administrators. The problem is that the administrators do not want the moderators to be able to override that limit.
As far as I can tell, whatever limits the administrators set will only cause the message to be sent to the moderators, who can then override the wishes of the administrators and send out the message anyway. Our administrators are technical and will set limits based on what our servers are able to handle. The moderators will be communications experts who can assess the quality of the message but are not technical.
I supose what I'm looking for is the auto-reject facility for an exceeded message size and I notice the same request scattered through the mail archives. I wonder whether there is an accepted solution for doing this?
Jon

On Mon, Feb 22, 2010 at 04:43:38PM +0000, Jonathan Knight wrote:
Whack in a size condition/test as an Exim ACL?
Stop the mails before they get to Mailman, so you don't have to deal with Mailman moderat(ion|ors).
-- ``Fog In Channel: Continent Cut Off'' (urban-legend newspaper headline, c. 1905)

On Tue, Feb 23, 2010 at 10:41:36AM +0000, Jonathan Knight wrote:
I'd have thought something like (untested)
deny message = mails to lists are size restricted. *link*, don't attach.
condition = ${if > {$message_size}{512K}}
domains = +mm_domains
might do the trick.
(I'd do that after demiming tests, YMMV.)
The presumption here is that all of your list-domains are in mm_domains, and that mm_domains handles just lists, not regular mail. Perhaps including a test for config.pck may be more appropriate.
-- Go mad this weekend: buy some beef! (advert at a supermarket)

Jonathan Knight wrote:
Since you use Exim, you may be able to modify the Mailman router in Exim to reject the message at incoming SMTP time and not involve Mailman at all. This has the added advantage that you won't be rejecting spam to forged From: addresses.
However, if you want to do this in Mailman, the quick and dirty approach is to patch Mailman/Handlers/Hold.py with the patch in the attached Hold.patch.txt file. This patch ignores the list setting completely and requires that you put MAX_MESSAGE_SIZE = n (n is the size in KB) in mm_cfg.py to set a size limit.
As Barry suggests, the cleaner approach is a custom handler. See the FAQ at <http://wiki.list.org/x/l4A9>.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

On Mon, Feb 22, 2010 at 04:43:38PM +0000, Jonathan Knight wrote:
Whack in a size condition/test as an Exim ACL?
Stop the mails before they get to Mailman, so you don't have to deal with Mailman moderat(ion|ors).
-- ``Fog In Channel: Continent Cut Off'' (urban-legend newspaper headline, c. 1905)

On Tue, Feb 23, 2010 at 10:41:36AM +0000, Jonathan Knight wrote:
I'd have thought something like (untested)
deny message = mails to lists are size restricted. *link*, don't attach.
condition = ${if > {$message_size}{512K}}
domains = +mm_domains
might do the trick.
(I'd do that after demiming tests, YMMV.)
The presumption here is that all of your list-domains are in mm_domains, and that mm_domains handles just lists, not regular mail. Perhaps including a test for config.pck may be more appropriate.
-- Go mad this weekend: buy some beef! (advert at a supermarket)

Jonathan Knight wrote:
Since you use Exim, you may be able to modify the Mailman router in Exim to reject the message at incoming SMTP time and not involve Mailman at all. This has the added advantage that you won't be rejecting spam to forged From: addresses.
However, if you want to do this in Mailman, the quick and dirty approach is to patch Mailman/Handlers/Hold.py with the patch in the attached Hold.patch.txt file. This patch ignores the list setting completely and requires that you put MAX_MESSAGE_SIZE = n (n is the size in KB) in mm_cfg.py to set a size limit.
As Barry suggests, the cleaner approach is a custom handler. See the FAQ at <http://wiki.list.org/x/l4A9>.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
participants (4)
-
Adam McGreggor
-
Barry Warsaw
-
Jonathan Knight
-
Mark Sapiro