[Mailman-Users] VERP active where it shouldn't

Mark Sapiro msapiro at value.net
Fri Jun 2 16:45:48 CEST 2006


Marc SCHAEFER wrote:

>On Thu, Jun 01, 2006 at 09:56:06PM -0700, Mark Sapiro wrote:
>
>> >   - is there a `mailman_display_config' command which would return the
>> >     *actually used* mailman configuration (maybe I am looking at the
>> >     wrong config file or Defaults.py file) ?
>> 
>> 
>> No.
>
>Could be handy :)


I was thinking the same thing. Here is a very rough first cut, proof of
concept script. Watch out for wrapped lines. You may have to change
the #! python command. The script needs to be stored in the bin/
directory with the other command line scripts in order to find the
paths.py module it imports.

It will grow a --help option and at a minimum, an option to specify a
pattern and print only those names that match the pattern (although
with the primitive script below, you can always pipe it into grep).

cut----------------------------------------------------
#! /usr/bin/python
#
# Copyright (C) 2006 by the Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301,
# USA.

"""A simple script to display the public mm_cfg variables
for checking a configuration.
"""

import paths

from Mailman import mm_cfg

names = mm_cfg.__dict__.keys()
names.sort()
for name in names:
    if not name.startswith('_'):
        print name, '=', mm_cfg.__dict__[name]
cut----------------------------------------------------



>I will simply configure the probes to use the `=' character, which is
>the equivalent of `+' here.  As long as the probes are sent in this
>hexadecimal format (and not in the user=host.ch format) it should work.
>
>Am I right that the probes are always sent in the hexadecimal format,
>and thus that the variables to set in mm_cfg.py are:
>
>   VERP_PROBE_FORMAT = '%(bounces)s=%(token)s'
>   VERP_PROBE_REGEXP = r'^(?P<bounces>[^+]+?)\=(?P<token>[^@]+)@.*$'
>
>I shall assume that for everything else as probes, the bug doesn't exist
>and no probes will be sent as long as the config is set to 0 or No.


The above is almost correct. In Mailman 2.1.5, you can turn off
everything but the VERP probes in mm_cfg.py. Then the above changes
will replace '+' with '=' except it should be

   VERP_PROBE_REGEXP = r'^(?P<bounces>[^=]+?)\=(?P<token>[^@]+)@.*$'

And yes, the probe token is always a hex confirmation string, not the
user=host address format.

-- 
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-Users mailing list