| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
| |
reset_payload(): Don't hack on the trailing newline here. Probably do
it in Decorate.py instead.
|
| |
|
|
|
|
| |
`multipart' to the pass filter. We still won't set
DEFAULT_PASS_MIME_TYPES = ['multipart'] because we want to leave the
pass filter empty by default.
|
| |
|
|
| |
default.
|
| |
|
|
| |
Also, whitespace normalization.
|
| |
|
|
| |
Also, whitespace normalization.
|
| |
|
|
|
|
| |
NewVars(): Add pass_mime_types if missing.
Also, whitespace normalization and PyChecker cleanup.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mick, hacked by Barry (so any bugs are my fault). The idea is that
after the filter_mime_types pass is made, if there are any
pass_mime_types defined, only parts that match these types are allowed
through.
reset_payload(): New function, factorization.
filter_parts(): Add passtypes to the argument list and do the
passtypes filtering.
Also, use the new .get_content_type() / .get_content_maintype()
interface everywhere.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
background on the content filtering process, make descriptions more
consistent, and hopefully more useful.
Also, added a description of the pass_mime_types variable. This is a
whitelisting feature contributed by Dan Mick, hacked by Barry (so any
bugs are my fault). The idea is that after the filter_mime_types pass
is made, if there are any pass_mime_types defined, only parts that
match these types are allowed through.
_setValue(), getValue(): Add support for pass_mime_types.
|
| |
|
|
| |
value setting when submitting an option's details page.
|
| |
|
|
| |
readable category name in the "return to <category> page" text.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
with the old approach, as pointed out by Michael Meltzer:
- it was broken <wink>
- it was still susceptible to inode overload
The fixes are to put attachments one more directory level down, where
the path is
archives/private/<listname>/attachments/<YYYYMMDD>/<msgidhash>
where YYYYMMDD is the date of the message encoded as 8 digits, and the
msgidhash is the first 2 and last 2 octets of the sha hash of the
outer message's Message-ID. Any name collisions inside that directory
(e.g. a message that contains two images with the same filename), are
resolved by finding a unique filebase extension.
Specific changes include:
calculate_attachments_dir(): Factor out the calculate of the
attachments directory so that e.g. Michael can use it in his
MimeDel.py hacks.
process(): Be sure to pass the appropriate arguments to
save_attachment() based on its new signature.
makedirs(): Factor out the creation and mod settings of the attachment
dir, and all subdirs.
save_attachment(): Pass the attachments directory in the arguments.
Fix calculation of the url and the saving of the attachment data.
|
| |
|
|
|
|
|
|
|
|
|
| |
email.Header.Header instance; it won't have a .startswith() method.
The real problem is that the attempt to send back the original,
non-prefixed header was way too naive.
Fortunately, the msgdata will contain the original subject if it was
munged, so just use that.
Question: should we try to send back the decoded header?
|
| | |
|
| |
|
|
|
|
| |
prefix_subject(): Only encode the subject prefix if it's necessary
because it contains non-ASCII characters, or the list owner has
requested to do so (via encode_ascii_prefixes).
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
controls whether the Subject: prefix gets encoded when it's ASCII and
the list's preferred language uses a non-ASCII character set.
|
| | |
|
| |
|
|
|
| |
non-digests unless the subscriber actually has a choice! Closes SF
bug # 563091 (not the u/i part).
|
| |
|
|
| |
so that it can be overridden in derived classes.
|
| |
|
|
|
|
|
|
|
|
| |
program based delivery
_makealiases_maildir(): New function for returning the aliases used
for the experimental maildir based delivery.
makealias: Choose between the above two based on the value of
USE_MAILDIR.
|
| |
|
|
|
|
|
|
| |
USE_MAILDIR: New configuration variable to select between classic
mailprog delivery of incoming messages and experimental maildir
delivery.
MAILDIR_DIR: The directory for maildir incoming messages.
|
| | |
|
| | |
|
| |
|
|
| |
consults to find a member's address.
|
| |
|
|
| |
to aid in debugging.
|
| |
|
|
|
| |
connection to the smtpd fails with a socket error during the
sendmail() call.
|
| |
|
|
|
| |
it. This ensures that VERP_PASSWORD_REMINDERS is propagated to the
outgoing queue.
|
| |
|
|
| |
last received bounce.
|
| |
|
|
| |
last received bounce.
|
| |
|
|
|
|
|
|
| |
and `member_posting_only' get translated into the new variables
`generic_nonmember_action', `default_member_moderation',
`accept_these_nonmembers', and member Moderate flags.
This (hopefully) closes SF bug #573071.
|
| |
|
|
|
|
|
|
|
| |
munging, separate from the mail list. This actually restores the
original Subject: field which is stashed away in the metadata when
it's munged in CookHeaders. Closes SF patch #573508.
prepare_message(): Restore the original Subject: header if
news_prefix_subject_too is false.
|
| |
|
|
|
|
|
|
| |
munging, separate from the mail list. This actually restores the
original Subject: field which is stashed away in the metadata when
it's munged in CookHeaders. Closes SF patch #573508.
process(): We have to enqueue the message metadata too!
|
| |
|
|
|
|
|
|
|
| |
munging, separate from the mail list. This actually restores the
original Subject: field which is stashed away in the metadata when
it's munged in CookHeaders. Closes SF patch #573508.
prefix_subject(): Stash the original Subject: header in the metadata
under the 'origsubj' key.
|
| |
|
|
|
|
|
|
| |
munging, separate from the mail list. This actually restores the
original Subject: field which is stashed away in the metadata when
it's munged in CookHeaders. Closes SF patch #573508.
GetConfigInfo(): Describe the news_prefix_subject_too attribute.
|
| |
|
|
|
|
|
|
| |
munging, separate from the mail list. This actually restores the
original Subject: field which is stashed away in the metadata when
it's munged in CookHeaders.
NewVar(): Add the news_prefix_subject_too attribute if it's missing.
|
| |
|
|
|
|
|
|
|
| |
munging, separate from the mail list. This actually restores the
original Subject: field which is stashed away in the metadata when
it's munged in CookHeaders.
Bump the DATA_FILE_VERSION to pick up the news_prefix_subject_too
attribute.
|
| |
|
|
|
|
|
|
|
| |
munging, separate from the mail list. This actually restores the
original Subject: field which is stashed away in the metadata when
it's munged in CookHeaders.
InitVars(): New attribute news_prefix_subject_too which controls this
feature. Hard code the default.
|
| |
|
|
|
| |
Move `pt' to pt_BR for Brazilian Portuguese, reserving pt_PT for
later.
|
| | |
|
| |
|
|
| |
response to SF bug #574240.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
page has a comma separated list of addresses. Do a better job of
splitting this field up and forwarding a copy to each address.
One nit: if the forward to address is a single member address, we try
to set the language to that member's preference. If we're looking at
a list of addresses though, it think it makes most sense to use the
list's preferred language.
Closes SF bug #577919.
|
| |
|
|
|
|
|
|
|
|
|
| |
updates from email 2.1 and email 2.2, you're a bit screwed. Message
objects grew a _default_type attribute which is *probably* text/plain
but that's not guaranteed. Unfortunately at the time __setstate__()
is called, we can't know for sure what _default_type ought to be,
since it depends on whether this object is contained in a
multipart/digest and we have no reference to the container.
This is the best we can do.
|
| |
|
|
| |
crufty workaround.
|
| |
|
|
|
|
|
|
|
|
|
| |
bug # 571634. First, catch any ValueError coming from the mktime_tz()
call to calculate wildely out of date Date: headers. If we get the
ValueError it's likely because the year is insane <wink> and the Date:
should be clobbered.
The second fix narrows the region where the list gets locked to just
the .ArchiveMail() and .Save() calls. No wonder Daniel was getting
AlreadyLockedErrors here -- this was clearly broken.
|
| |
|
|
|
| |
enabled, that both the nntp_host and linked_newsgroup fields are
filled in. Closes SF bug #579285.
|
| |
|
|
|
|
|
|
|
| |
a TypeError if its second argument contains null bytes. I have a hard
time understanding how that could happen, but it must be related to a
MM2.0.x upgrade.
This patch should fix the problem by catching and ignoring the
TypeError, which is equivalent to a failed challenge.
|