| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
in mm_cfg.py
|
| |
|
|
| |
Mailman's copy of the email package instead of Python's.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
in them, say if an encoded name appeared in a From header. But
maketext() may return byte strings with non-ascii characters in them,
and concatenating these two types of strings is a no no.
The local fix (implemented here) is to make sure that
pending_requests() returns a byte string with no characters that are
illegal in the list's preferred language's charset.
The longer term fix probably ought to be that we use Unicode
everywhere and that maketext() returns a Unicode.
|
| |
|
|
|
|
| |
and cron scripts. When code/status == 0, there's no error (it's
likely --help output) so send that to stdout. Otherwise, it's an
error and the output goes to stderr.
|
| |
|
|
| |
since the default is fine.
|
| |
|
|
|
|
| |
raised in the NNTP() constructor. Just catch it, log it, and move on.
Also, whitespace normalization.
|
| |
|
|
| |
existing X-Originally-To header before we place our own there.
|
| |
|
|
| |
and -l/--listname.
|
| |
|
|
| |
already been notified within the bounce_you_are_disabled_warnings_interval.
|
| |
|
|
| |
Fil.
|
| |
|
|
|
|
|
|
| |
been disabled by themselves, the list owner, or for unknown (legacy)
reasons. By default we only notify `bounce disabled' members, but you
could now do notifications for any other reason.
Also, fix the -l/--listname option parsing.
|
| |
|
|
|
| |
hold_and_cmd_autoresponses dictionary to see if any entries can be
evicted (we only hold such data for a single day).
|
| |
|
|
| |
limit password sending to a specific list.
|
| |
|
|
| |
this change.
|
| |
|
|
| |
setBounceInfo() call must be made with the list lock acquired.
|
| |
|
|
| |
It's totally useless to us.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
nntp_host. Also, clean up some exception handling. Specifically,
open_newsgroup(): Cache the connection object.
clearcache(): New function to clean things up at script exit.
poll_newsgroup(): Catch all NNTPErrors, not just (obsolete)
error_temp.
process_lists(): Catch all socket and nntplib errors when opening the
newsgroup.
main(): Be sure to clear the nntp connection cache when done.
|
| |
|
|
| |
appropriate addresses.
|
| |
|
|
| |
addresses.
|
| |
|
|
|
| |
package to know how to unpack the request record. bin/update should
now canonicalize them.
|
| | |
|
| |
|
|
| |
fullname.
|
| |
|
|
| |
constructor so that the message gets the proper charset settings.
|
| |
|
|
|
|
|
|
| |
header into the same language that the password reminder body is
getting translated to, we need to temporarily set the i18n language
around the calculation of the Subject: header. We also need to pass
the user's suspected language <wink> into the UserNotification()
constructor.
|
| | |
|
| |
|
|
|
| |
modules. Specifically, import the email package /after/ we've
imported paths.
|
| |
|
|
|
|
|
| |
Here, we're looking for members who are not yet disabled, but who have
a bounce score >= the threshold. This can happen if the list owner
lowers the threshold. There's no sense in waiting until another
bounce is received on the member before we disable them.
|
| | |
|
| |
|
|
|
|
|
| |
Send these out at 9am localtime.
Also, change the admin reminders to run at 8am local time instead of
10pm local time.
|
| |
|
|
| |
re-enable reminders when they're due.
|
| |
|
|
|
|
|
|
|
|
|
| |
address instead of the mailman-admin@dom.ain address. We don't want
people contacting the site owner to be bounce processed.
Also, Utils.get_site_email()'s second argument should no longer
include the leading dash.
Set the `errorsto' metadata to the mailman-bounces address, and add a
`verp' flag in the metadata set to VERP_PASSWORD_REMINDERS.
|
| |
|
|
|
| |
which includes the fullname, but also watch out for older records
which don't include the fullname.
|
| |
|
|
|
| |
and exit with a non-zero status (so cron should let us know there's a
problem).
|
| | |
|
| |
|
|
|
|
|
| |
into the script's #! line -- based on --with-python settings, without
losing CVS revision history.
Install from the build directory.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
into the script's #! line -- based on --with-python settings, without
losing CVS revision history.
#! /usr/bin/env python
becomes
#! @PYTHON@
which gets substituted for in configure.
|
| |
|
|
|
| |
send the password reminder as if it's coming from the "first" public
mailing list. Instead it comes from the "site list".
|
| |
|
|
|
| |
mode 644 while the latter is installed with mode 775. This lets you
run cron scripts from the command line.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
after paths. Because these scripts are run from cron with "python -S"
they must import mm_cfg before attempting to import mimelib; mm_cfg
hacks sys.path to include site-packages which -S inhibits.
For those scripts that already import mm_cfg, add a comment describing
the import order dependencies. For those that didn't, add a comment
about why it's being imported.
Also, gate_news: Removed the _ContinueLoop docstring so translators
have one less non-translatable docstring to worry about.
Closes Thomas's SF patch #443803.
|
| |
|
|
| |
clauses.
|
| | |
|
| | |
|
| |
|
|
| |
broken MIME boundaries are ignored.
|
| |
|
|
|
|
|
| |
API instead, e.g.
GetUserOption() -> getMemberOption()
GetUserSubscribedAddress() -> getMemberCPAddress()
|
| |
|
|
| |
invoked from cron.
|
| |
|
|
| |
bin/mailmanctl and bin/qrunner.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
remove the run-from-cron functionality (yes, I know this script
shouldn't be in cron/ anymore, but moving it is a PITA).
Specifically,
Removed the SIGCHLD signal handler since this will no longer be run as
a cron job. Added a PIDFILE global to name the file holding the pid
of the master qrunner process.
sighup_handler(): When the master gets a SIGHUP, send a SIGINT to all
the children so that they'll exit. This has two benefits: it will
automatically close all open log files, and the auto-restart feature
will mean all the children will see any changes to the source code
(i.e they'll restart and thus import afresh any updated modules).
master(): When the main loop exits, be sure to include the
watchdog_pid in the list of children to SIGINT.
main(): Removed the -b/--background flag. Write the pid of the
current process to data/qrunner.pid so that it can be exited
externally via: kill -INT `cat data/qrunner.pid`
Convert all syslog() calls to new style.
|
| | |
|