[Mailman-Developers] Bug? Refused subscription confirmation

Mark Sapiro msapiro at value.net
Fri Mar 17 16:33:42 CET 2006

Giuliano wrote:
>On 17 Mar 2006, at 06:37, Mark Sapiro wrote:
>> I agree that it's a bug, but I think the primary bug is in an MUA that
>> is generating a reply to mail
>> From: smith at home.example
>> and addresses it
>> To: "smith at home.example" <smith at home.example>
>Not exactly, it does only add the local_part and without quotes.

But does it ever do it in the case we are concerned with? Namely where
the message is

From: list-confirm+string_of_hex_digits at example.com.

Note that the original regexp works as long as the MUA added stuff
doesn't contain '+'.

>I have tested your regexp for a "regular" reply and it works. Of  
>course it does not work with that buggy format (wherever one consider  
>the bug to be...) and the fixed version is below.

I'm not sure what "your regexp" means here. Is it the one that is
currently in Defaults.py(.in), or my suggested change?

>> However, I have no objection to Mailman "working around" this MUA bug
>> :-) by changing
>> VERP_CONFIRM_REGEXP =r'^(?P<addr>[^+]+?)\+(?P<cookie>[^@]+)@.*$'
>> in Defaults.py.in
>> I ask though, does anyone have a better suggestion for a replacement
>> than
>>  r'^(\s*"[^"]*")?(?P<addr>[^+]+?)\+(?P<cookie>[^@]+)@.*$'
>> or is that OK?
>it is too specific as I said. This works instead:

Yes, it requires quotes, but as I ask above. Does any MUA that adds
this not put quotes around it when it contains '+'?

>VERP_CONFIRM_REGEXP = r'^(\s*.*)?(?P<addr>[^+]+?)\+(?P<cookie>[^@]+) 
>This was checked against many formats and  probably the simpler and  
>less reduntant:
>VERP_CONFIRM_REGEXP = r'^(.*)?(?P<addr>[^+]+?)\+(?P<cookie>[^@]+)@.*$'
>would work too. Or even:
>VERP_CONFIRM_REGEXP = r'(.*)?(?P<addr>[^+]+?)\+(?P<cookie>[^@]+)@.*$'
>as I do not see the point of checking for the line beginning.

Well, I don't think the 'addr' field is actually used, but I think
these suggestions eat up all but the last character of it. How about

VERP_CONFIRM_REGEXP = r'(.*<)?(?P<addr>[^+]+?)\+(?P<cookie>[^@]+)@.*$'

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

More information about the Mailman-Developers mailing list