| Commit message (Collapse) | Author | Files | Lines |
|
|
|
can exactly specify the permissions on the file. We don't need to
save the umask since open_ex() does this. The permissions must be
exactly 0640, which restricts as much as possible. Group must be able
to read the file or site-password override in the Web interface will
not work.
Fixes PR#67
|
|
be 0640. We'd like to restrict the permissions as much as possible,
but group mailman must be able to read the file, or site-password
override in the Web interfaces won't work.
|
|
|
|
wrap the body of the code in a try/finally so the lock is definitely
released should something bad happen.
|
|
This way, I can wrap the body of the code in a try/finally so the lock
is definitely released should something bad happen.
|
|
always be `mailman' (from which we can automatically get the gid), and
PREFIX is available in mm_cfg.
.cvsignore, Makefile.in: undo administrivia
|
|
|
|
check over the Mailman installation. Not sure I got everything, but
its a start.
.cvsignore, Makefile.in: administrivia
|
|
|
|
|
|
under the member_posting_only section.
|
|
using GetSender iff use of GetEnvelopeSender was attempted but
returned an address beginning with
'%s-admin' % self._internal_name
|
|
list.user_option must be lowercase addresses (i.e. canonicalized
addrs). The DATA_FILE_VERSION bump will fix existing lists and these
two functions always lowercase the user address before checking it.
Fixes PR#74
|
|
CanonicalizeUserOptions(): New function that merges all
mixed-case-keyed user_options and stores them using lower case keys.
|
|
DATA_FILE_VERSION: Bump to 15 to fix PR#74 (see other checkins)
|
|
|
|
|
|
|
|
We may eventually need to check for VSNPRINTF.
|
|
vulnerability (PR#72)
|
|
config.db file in the face of IOErrors during the marshal write. This
is critical code so we have to make sure we get it right, but I've
been running it on python.org for about a day and have seen no
problems under normal conditions. I've tested under failure mode too,
but not under real world conditions.
|
|
This isn't part of the bsddb.btree interface assumed by Pipermail, but
it's only used in one place and /dramatically/ improves Mailman's
performance.
HyperDatabase.clearIndex(): Use DumbBTree.clear(). These changes may
not fix all the performance problems with Mailman, but certainly nails
the most serious problem I've been experiencing.
|
|
|
|
can bomb out with MMAlreadyAMember if the address has already been
subscribed by some other mechanism after the pending confirmation
was registered. Catch this and reply politely.
|
|
|
|
single message, we must quote any lines beginning with "From " --
the message will be interpreted by the general
HyperArch.HyperArchive.processUnixMailbox() as a (possibly
multi-message) mbox file on it's way into the archive.
|
|
needed. For now, however (trying to move towards 1.0), I've merely
reduced the amount of work done in the child, and wrapped it in a
try: clause for catching fork() failures.
|
|
files. This fixes a problem where one old, invalid queue file would
always cause the queue runner to abort before the newer, possibly
valid queue files were processed.
|
|
are valid.
|
|
member password mailed back -- if given with no arguments.
|
|
all (these used to raise an IndexError).
|
|
to the directory Mailman has been unpacked into, to avoid any
confusion regarding the "src" directory inside "mailman-<version>".
Tried to clarify the solution to smrsh-induced problems.
|
|
used in Mailman's web interface?".
|
|
already inserted subject prefixes :(
|
|
|
|
|
|
|
|
smtplib.sendmail() can raise.
|
|
* New method WebAuthenticate(). Takes up to three keyword arguments:
user-address, password and cookie-suffix. If password is supplied
(and authenticates OK), issue a cookie -- otherwise try to do
authentication based on cookies.
* MakeCookie(): Changed to actually return a finished Cookie object.
Takes one (non-optional) argument; the created cookie's name.
Fixed bug in setting of cookie's path.
* CheckCookie(): Now takes cookie's name as single argument, and can
raise various MMAuthenticationErrors if that cookie doesn't
authenticate OK.
admin.py: Do explicit re-authentication when changing list admin
password.
admin.py, admindb.py and private.py: Removed isAuthenticated()
function -- use MailList.WebAuthenticate() instead. This removed
the need to import Cookie, so now we don't.
|
|
experiment with the addaliases stuff).
|
|
anything, to disallow bin/newlist creating lists with bogus admin
addresses.
|
|
to be a per-line operation, done after addition of prefix.
AddError(): Use AddToResponse with the new `prefix' argument to make
sure the prefix is added to all the lines of the error message.
Added info on the `help' mail command to the response indicating
processing problems.
Quite a lot of buglet fixes and general cleanup.
|
|
MMBadPasswordError and MMPasswordsMustMatch have been moved.
|
|
|
|
|
|
|
|
|
|
standard libraries.
This fix has been verified to work on SCO OpenServer 5, which was the
OS for which this change was originally needed. The previous attempt
at a fix, stolen from GNU sh-utils, proved insufficient.
|
|
SecurityManager: New functions MakeCookie() and CheckCookie(). These
functions work with cookies containing cookie creation and expire
time, the client's IP number, and a checksum hash of these values as
well as a secret (the lists (encrypted) admin password).
admin.py, admindb.py and private.py: isAuthenticated now uses these
new cookie functions.
|