| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
| |
will assume it's 8-bit encoded to the passed-in character set, convert
unicode objects to that encoding.
|
| |
|
|
|
|
| |
counts) are pretty damned important, we should always log them. __writelog()
now takes an 'important' argument, and writes to the logfile even if it
wasn't requested.
|
| |
|
|
|
| |
non-ASCII data, lets not make email.Header.Header barf on it; use 'replace'
as the unicode error strategy (this requires email-2.5b1.)
|
| |
|
|
|
| |
lower than the highest entry in the list config.db, so the assertion was
being triggered. We can just deal with the problem instead.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
this bounce handler was only expecting a string.
|
| |
|
|
| |
Closes SF bug # 703941 by Stuart Bishop, who also suggested the basic fix.
|
| |
|
|
|
|
| |
error message.
Closes SF bug # 703941 by Stuart Bishop, who also suggested the basic fix.
|
| |
|
|
|
|
|
|
|
|
| |
being invited to, in order to prevent cross-list invitation
confirmation attacks.
ProcessConfirmation(): Check that the .invitation attribute matches
the name of the list confirming to.
Closes SF bug # 703941 by Stuart Bishop, who also suggested the basic fix.
|
| |
|
|
| |
attempting to confirm to a different list.
|
| |
|
|
|
|
|
|
|
| |
list but attempts to confirm to a different list, we want to disallow
this and send notifications to the owners of both attacked lists.
Closes SF bug # 703941 by Stuart Bishop.
Also True/False where appropriate.
|
| |
|
|
|
|
|
|
|
|
|
| |
_dispose(): Add another key to the msg metadata, deliver_after. If a
temporary failure occurs, this key will hold the time in epoch-seconds
after which we can retry delivery. This stops us from retrying every
second as reported in SF bug # 699900. Default is to retry once per
hour (see Defaults.py.in).
Also, use copy.deepcopy() instead of converting the message to a
string and re-parsing it.
|
| |
|
|
|
| |
outgoing qrunner should wait before it retries a tempfailure
delivery.
|
| |
|
|
|
|
|
|
|
| |
into encoded 8-bit strings. Returning Unicode from here caused too
much breakage, so we go in the other direction. Eventually, Mailman
should use Unicode for everything (maybe).
This should fix (one of) Peer's problems, and maybe the one recently
reported by Dan Buchmann.
|
| | |
|
| |
|
|
| |
SF patch #534297, demon.co.uk and another bounce handler, by Martin Pool.
|
| |
|
|
| |
SF patch #521124, Bouncer for SMTP_Gateway, by Martin Pool.
|
| | |
|
| |
|
|
|
|
| |
possibly 'ignored' lines, if a lot of 'em were blank) on a command-handler
address, inform the user that the mail was empty, and how to get help. Based
on SF patch #522080, Respond sensibly to blank -request email, by Seb Wills.
|
| | |
|
| |
|
|
|
|
|
|
| |
subscribeack.txt, as 'user' (like userpass.txt already has.) This allows you
to write subscribeack.txt's that go like:
You subscribed using the email address %(user)s. If you wish to change
this, please visit ... [etc]
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Jr, after much checking and rechecking (and some massaging) by me. Checking
in now before I fall asleep and forget what all this was for.
This patch adds the ability to 'make DESTDIR=/some/dir/tree install' that
doesn't influence the paths stored in e.g. Defaults.py at all, which is of
good use for various package managers. It is not all that package managers
must do, however! Running make install with DESTDIR set means bin/update is
never run, and mm_cfg.py is always written; package managers should make
sure the appropriate post-installation is done, and that mm_cfg.py is
treated as a config file.
This patch inadvertently fixes some bogus whitespace: 8-spaces where
surrounding code used tabs. The difference was harmless because the 8-spaces
were used inside shell-continued-oneliners, but it is confusing and could
lead to future harm. I'm too tired to make those two or three changes in a
separate checkin, sorry.
This patch also assumes the various packages that are installed using
distutils do not record (or rather, use) their installation paths anywhere,
but this seems to hold true at least for the moment.
Also, I've done so many slow cvs diff's, I'm wondering when we'll switch to
Subversion. Unfortunately, I've also done so many 'cvs diff -c > file; patch
-p0 -R < file's to switch back and forth between patches and change sets,
I'm wondering when we'll switch to Aegis as well. :-P
|
| | |
|
| | |
|
| |
|
|
| |
more log messages, minus an i18nization of 'n/a'.
|
| |
|
|
|
|
| |
Mailman/cmd_confirm.py (but doesn't really use it :)
2.1 backport candidate.
|
| |
|
|
| |
them. Note this does /not/ check the realnames, just the addresses.
|
| | |
|
| |
|
|
|
| |
the case when creating the mailing list, in which case fullpath() will
be None so we won't be able to locate the list directory.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
677668. Specifically,
ApprovedAddMember(): Make sure the admin notification is i18n safe by
temporarily setting the language to the list's preferred language, and
str-ifying the full name to the list's language, replacing any wacky
characters. :)
DeleteMember(): Set admin_notify default value to None instead of 0,
so that the list's admin_notify_mchanges takes precedence in most
cases.
|
| |
|
|
| |
database.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
record and if it isn't in the mailing list's list of available
languages, return the list's preferred language. This should go a
long way towards fixing problems where a user's preferred language is
disabled.
addNewMember(): Use a slightly more efficient check of the address's
membership.
|
| | |
|
| |
|
|
| |
subscription delivery mode. Patch by Todd (Freedom Lover).
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
MM2.1. Specifically,
__opendb(): The on-the-fly conversion of db entries had two bugs:
First, it was comparing the id instead of the entry type. Second, it
wasn't aware of len==4 SUBSCRIPTION entries.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
digests. Specifically,
lheader() -> oneline(): Also, get rid of **kws since we're not going
to use these. Catch any LookupError or UnicodeError that may occur,
but do the .encode() with 'replace' for a better chance to succeed.
send_i18n_digests(): Use Utils.wrap() to wrap the subject headers, and
also in the kept headers in plain text digests. Eliminate the blank
line between subjects in the ToC.
|
| |
|
|
|
|
|
|
|
|
|
| |
_dispose(): Set the msgdata's pipeline attribute to the pipeline list
before calling _dopipeline(). If there's no more to do, delete this
attribute. This way, if one of the modules throws an exception, we'll
resume the next delivery attempt at that module. (E.g. if we unshunt
it later).
_dopipeline(): Add a bare except which pushes the failing module back
on the front of the pipeline list, then re-raises the exception.
|
| |
|
|
| |
a round trip through flattening.
|
| |
|
|
| |
stringify it before calling .splitlines().
|
| | |
|