[Mailman-Users] 'ack' doesn't work when sending as list rather thansender?

Mark Sapiro mark at msapiro.net
Wed Sep 29 04:57:51 CEST 2010


Christopher Adams wrote:

>I just figured out that a sender can only get an acknowledgment with
>'ack' checked if the list is sending as the sender as opposed to list
>name. Is there anyway that a sender can get an acknowledgment even if
>the list is set up this way?


By "sending as ... list name" I'm assuming you mean the list is
anonymous, i.e., General Options -> anonymous_list = Yes.

The issue here is the CookHeaders.py handler saves the original From:
or other sender for use by the Acknowledge.py handler in sending the
'ack', but for an anonymous lists, the Cleanse.py handler which
removes all the sender information comes ahead of CookHeaders in the
pipeline.

I actually broke this inadvertently in Mailman 2.1.13, and now I'll
have to figure out what to do about that. The issue is that for
anonymous lists, Cleanse removes the From:, Reply-To: and Sender:
headers from the post. This causes the get_sender() method used by
CookHeaders to get the original sender to fall back to the Unix from
(envelope sender). The issue is that in 2.1.13, I "improved"
anonymizing by munging the Unix from in anonymized posts to the list
address, so now CookHeaders fets the list address as the sender when
saving the original sender, and since this is generally not a list
member with 'ack' true, no ack is sent.

I suppose the easiest fix is to have Cleanse rather than CookHeaders
save the original sender. One could also reorder the pipeline to put
Cleanse after CookHeaders, but I'm not sure at this point if there
would be unintended consequences from that.

I'll follow up with a patch when I work this out.

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



More information about the Mailman-Users mailing list