aboutsummaryrefslogtreecommitdiffstats
path: root/Mailman (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Update version numbers (2.1.4 is definitely going out before the endbwarsaw2003-12-241-3/+3
| | | | of the year).
* adminy_overview(): Richard Barrett's patch # 828811 to reduce listinfobwarsaw2003-12-241-5/+6
| | | | | | and admin cgi process size by not keeping the entire mlist object alive through a reference in the advertised list. Only the information used in the overview is kept.
* listinfo_overview(): Richard Barrett's patch # 828811 to reducebwarsaw2003-12-241-5/+6
| | | | | | listinfo and admin cgi process size by not keeping the entire mlist object alive through a reference in the advertised list. Only the information used in the overview is kept.
* finished_update_article(): Richard Barrett's fix to reduce Pipermailbwarsaw2003-12-241-0/+9
| | | | | | | | | | | | | archive bloat by deleting the html_body attribute on Article objects. Closes SF bug #835332. This is a stub in the base class. _update_thread_index(): Call finished_update_article() when done. store_article(): squirrel away the html_body value when pickling the article. This only reduces bloat on new articles. See bin/rb-archfix to clean up older archives.
* finished_update_article(): Richard Barrett's fix to reduce Pipermailbwarsaw2003-12-241-0/+6
| | | | | | | | archive bloat by deleting the html_body attribute on Article objects. Closes SF bug #835332. This only reduces bloat on new articles. See bin/rb-archfix to clean up older archives.
* Comment repair.bwarsaw2003-12-221-1/+1
|
* Fix commentbwarsaw2003-12-181-2/+1
|
* uheader(): Added default argument for maxlinelen.bwarsaw2003-12-181-11/+12
| | | | | | | | | | process(): Reworked the way we calculate the List-Id header in the face of i18n descriptions which may need to be quoted (if ASCII and containing RFC 2822 special chars). What we do now is RFC 2047 encode just the description part, if there is one, then use formataddr() to combine that with the email address-like list identification.
* send_i18n_digests(): Configurations can change between the time abwarsaw2003-12-161-1/+6
| | | | | | | | | message is originally received and the time the digest is sent. If the configuration changes by setting ARCHIVE_HTML_SANITIZER to 0, a DiscardMessage exception can occur during the scrubbing. Catch this error. Closes SF #860135 with basic solution by Martin Pool.
* process(): Quote the description when adding it to the List-ID header,bwarsaw2003-12-131-1/+1
| | | | | in case there are any special characters (in the RFC 2822) in the description.
* Romanian is iso-8859-2bwarsaw2003-12-131-1/+1
|
* handleForm(): Close some cross-site scripting holes found by Dirkbwarsaw2003-12-132-4/+5
| | | | Mueller.
* process(): Update a few email package calls.bwarsaw2003-12-011-5/+11
|
* Results.__init__(): It's possible for the Header functions to raise abwarsaw2003-12-011-4/+9
| | | | | HeaderParseError, so if that happens just ignore the Subject header for command purposes.
* Fix a small comment bug.bwarsaw2003-12-011-1/+1
|
* process(): The implementation of extended header filters viabwarsaw2003-12-011-4/+79
| | | | header_filter_rules.
* True/False where appropriate.bwarsaw2003-12-011-1/+1
| | | | | | process(): When we encode the text, catch ValueError along with UnicodeError and LookupError. The ValueError can be raised if the charset is the empty string. Closes SF bug # 834486.
* True/False where appropriate.bwarsaw2003-12-011-15/+23
| | | | | | process(): When we encode the text, catch ValueError along with UnicodeError and LookupError. The ValueError can be raised if the charset is the empty string. Closes SF bug # 834486.
* True/False where appropriate.bwarsaw2003-12-011-1/+7
|
* True/False where appropriate.bwarsaw2003-12-011-18/+19
| | | | handleForm(): Close a very minor, potential CSS hole.
* GetConfigInfo(), handleForm(): Added header_filter_rules, a new variable whichbwarsaw2003-12-011-2/+114
| | | | | collects regular expression rules to match against the message's outer headers, along with the action to take when a match occurs.
* _getValidValue(): Basically ignore HeaderFilter widgets. They'll be handledbwarsaw2003-12-011-0/+2
| | | | in the Privacy.py file.
* process(): Catch MMBadPasswordError which gets thrown by ProcessConfirmation()bwarsaw2003-12-011-0/+3
| | | | when the wrong admin password is given in a confirmation message.
* subscription_prompt(): Make text and submit button have consistent text.bwarsaw2003-12-011-2/+2
| | | | Closes SF bug # 816410.
* get_item_gui_value(): Added a new widget HeaderFilter and associated code tobwarsaw2003-12-011-2/+72
| | | | | | | | build the interface from header_filter_rules. Here you can specify a set of regular expressions to test against a message's (outer) headers. You can also specify the action to take when a rule matches. These are available on Privacy->Spam Filters page.
* html_TOC(): If PUBLIC_MBOX is false, use archtocnombox.html which doesn't havebwarsaw2003-12-011-5/+6
| | | | a link to the mbox file.
* makelink(), breaklink(): Some coding updates.bwarsaw2003-12-011-14/+23
| | | | | | | InitVars(): Fix the permissions on the empty archive index. Fixes SF bug #835012. CheckHTMLArchiveDir(): Only make the mbox link public if PUBLIC_MBOX is true.
* NewVars(): Add header_filter_rules if missing.bwarsaw2003-12-011-0/+1
|
* Bump version to 2.1.4a0.bwarsaw2003-12-011-4/+4
| | | | Also bump DATA_FILE_VERSION to pick up the new header_filter_rules variable.
* True/False where appropriate.bwarsaw2003-12-011-1/+1
|
* True/False wehre appropriate.bwarsaw2003-12-011-2/+8
|
* repend(): An interface for putting request data back into the requestbwarsaw2003-12-011-4/+19
| | | | database.
* InitVars(): Added header_filter_rules for support of the expanded spambwarsaw2003-12-011-14/+27
| | | | | | | | | filters. ProcessConfirmation(): A fix for bug # 833384, where the incorrect admin password given in a the response to a hold message's confirm attachment would end up discarding the message. Now, an error message is returned to the sender and the held message is re-pended.
* RejectMessage.__init__(): Since the notice message is put into the body of thebwarsaw2003-12-011-0/+6
| | | | rejection message, make sure it ends with at least two newlines.
* New variable PUBLIC_MBOX which allows the site administrator to disable publicbwarsaw2003-12-011-30/+35
| | | | | | access to all list mbox files (this is not a per-list configuration). HeaderFilter: a new widget type to support the expanded spam filtering.
* GetAvailableLanguages(): Strip out any language codes that aren't inbwarsaw2003-11-271-1/+3
| | | | | LC_DESCRIPTIONS. This is mostly useful for debugging since I occasionally add languages for testing and then disable them.
* Added Romanian support by Stefaniu Criste.bwarsaw2003-11-271-0/+2
| | | | | (Note that Croatian is added but not yet supported. I'm still waiting for Nino Katic to give me a blessed translation.)
* Typosbwarsaw2003-11-271-2/+2
|
* bulkdeliver(): Include the Message-ID in the log message.bwarsaw2003-11-271-4/+6
|
* bulkdeliver(): Rework the SMTP error handling to fix a problembwarsaw2003-11-261-10/+21
| | | | | | | | | | | | | | | described here: http://mail.python.org/pipermail/mailman-developers/2003-November/016119.html The issue is that if we get an SMTPResponseException with a permanent error code, we don't want to add all the recipients to the failures dict, otherwise they'll all score a bounce. That's not appropriate because the message is being rejected by the local smtpd for reasons having to do with the content of the message, not because there's some delivery problem to the recipient. Log all problems now to logs/smtp-failure.
* ApprovedChangeMemberAddress(): When someone requests to change theirbwarsaw2003-11-251-2/+12
| | | | | | | | address globally, it is possible the new address is already a member of this (or one of the other) lists. In that case, the old address is removed. Closes SF # 835036.
* Create(): Take an optional emailhost name and use that to calculatebwarsaw2003-11-241-2/+5
| | | | | the valid postingaddr. If not given (the default), use DEFAULT_EMAIL_HOST as before.
* process_request(): In response to SF bug # 835870, we now check thebwarsaw2003-11-241-5/+12
| | | | | | | | | | calculated host name, and if VIRTUAL_HOST_OVERVIEW is true, that host name must match one of our known virtual hosts. Otherwise we'll refuse to create the list. If VIRTUAL_HOST_OVERVIEW is false, we'll do no checking (meaning the old behavior of being able to create a list with a non-fqdn hostname still exists). Also, pass the email host name into the MailList.Create() call.
* copyright years.bwarsaw2003-11-211-1/+1
|
* _BounceInfo.__init__(), registerBounce(), disableBouncingMember(): Abwarsaw2003-11-211-6/+7
| | | | | | | | fix for SF bug # 846681, where the confirmation cookie emailed in a bounce disabled notification was always out of date. The problem was that we created the cookie at the time of the first bounce. This is very likely more than three days before the time of the last bounce, which is when we should have (and now do) create the cookie.
* enqueue(): Always flush and sync the message file.bwarsaw2003-11-211-1/+3
|
* change_options(): When calling ApprovedAddMember(), pass a meaningfulbwarsaw2003-11-211-2/+3
| | | | value to the whence argument.
* __handlesubscription(): Pass a meaningful whence argument tobwarsaw2003-11-211-1/+1
| | | | ApprovedAddMember().
* ApprovedAddMember(): Add a 'whence' argument which gets passed abwarsaw2003-11-211-5/+8
| | | | | | | | | | | descriptive string explaining where the member got added from. Improves subscription logging. AddMember(): Pass 'remote' to ApprovedAddMember()'s whence argument. ProcessConfirmation(): We know whether the confirmation came from email or via the web, so pass this information to ApprovedAddMember()'s whence argument.
* boilerplatebwarsaw2003-11-201-1/+1
|