aboutsummaryrefslogtreecommitdiffstats
path: root/Mailman (follow)
Commit message (Collapse)AuthorAgeFilesLines
* [ 873035 ] subject handling in -request mailtkikuchi2004-09-231-1/+3
| | | | | more precautions to assert the command should be in 'us-ascii' and more errors.
* decoration is useless; in fact, it causes mojibake in japanese.tkikuchi2004-09-221-2/+2
|
* Use Utils.oneline() where applicable.tkikuchi2004-09-202-1/+3
| | | | | | | | | Closing [ 1003070 ] Decode original subject in post acknowledgement by Soji IKEDA Modified Files: Tag: Release_2_1-maint Mailman/Bouncer.py Mailman/Handlers/Acknowledge.py
* [ 872068 ] Decorate.py patch (by tkikuchi)tkikuchi2004-09-181-13/+36
| | | | Use unicode concatnation in header+message+footer
* More error handling for oneline().tkikuchi2004-09-181-1/+2
|
* oneline() has moved to Utils.py (sorry for the last bogus commit).tkikuchi2004-09-181-16/+3
|
* [ 891491 ] Scrubber.py patch by tkikuchitkikuchi2004-09-172-10/+48
| | | | | | | | | | | | | | Modified Files: Mailman/Handlers/Scrubber.py Mailman/Defaults.py.in Fixes some bugs: charset problem where input/output charset are different text file without charset makes trouble when merging into one text msg. delete content-transfer encoding use Utils.oneline() for i18n filename use msg.walk() to collect parts Introduce: mm_cfg.SCRUBBER_DONT_USE_ATTACHMENT_FILENAME to prevent extremely long fn.
* Python2.1 on BSD/OS 4.1 returns AttributeError for strptime.tkikuchi2004-09-161-1/+1
|
* SF patch: [ 970383 ] moderator -1 admin requests pending.tkikuchi2004-09-161-1/+3
| | | | | also a minor typo fix. Thanks to Jim Tittsler - jtittsler.
* [ 665569 ] make Postfix bounce detection work with newer postfixtkikuchi2004-09-161-1/+1
| | | | | TK: Being a postfix user myself, this patch looks reasonable. Thanks to James Henstridge (jhenstridge).
* Oops, this patch may be more modular. sorry for the bad first job.tkikuchi2004-09-151-76/+79
|
* Fix for "spam filter removed" SF id: 1020102/ bug rep. 1013079/1020013tkikuchi2004-09-151-73/+75
| | | | this looks easiest and my first commit to Mailman source tree. ;-) (TK)
* SMTP_LOG_EVERY_MESSAGE: Add the listname to the log message.bwarsaw2004-07-131-1/+1
|
* Add True/False compatibility for older Pythons. Closes SF bug #955381.bwarsaw2004-05-181-0/+6
|
* Set us up for 2.1.6bwarsaw2004-05-181-3/+3
|
* 2.1.5 final.bwarsaw2004-05-151-3/+3
|
* _oneloop(): Switchboard.dequeue() can't really return Nones for msg or msgdatabwarsaw2004-05-151-25/+29
| | | | | any more (they were error signals in the previous switchboard implementation), so simplify the loop. We can't have 'lost data files'.
* main(): Add discard checkbox above the last submit button too.bwarsaw2004-04-301-0/+5
|
* 2.1.5c2bwarsaw2004-04-251-2/+2
|
* Turkish language support by Kerem Erkan.bwarsaw2004-04-251-0/+1
|
* main(), process_form(): Due to popular demand, added SF patch # 810675 whichbwarsaw2004-04-251-1/+13
| | | | | adds a "discard all messages marked Defer" for quicker admindb maintenance. Patch by Eddie Kohler, SF id xexd.
* 2.1.5 release candidate 1.bwarsaw2004-04-241-2/+2
|
* process(): Disallow multiple password retrievals. Patch by Tokio Kikuchi.bwarsaw2004-04-241-1/+5
|
* Load(): Improve the log message.bwarsaw2004-03-041-1/+1
|
* Load(): Only gain the lock and attempt to repair the config file if file ==bwarsaw2004-03-041-9/+11
| | | | plast or file == dlast.
* Load(), __fix_corrupt_pckfile(): We should only rotate the corrupt picklebwarsaw2004-03-041-8/+21
| | | | files when the list lock is held.
* Load(): Another shutil EPERM elimination patch; os.remove any existing safetybwarsaw2004-02-291-3/+15
| | | | file.
* Load(): Before creating the .safety file, move any existing .pck or .db filebwarsaw2004-02-291-0/+10
| | | | | to a .corrupt file, since it could not be read. This should eliminate the shutil EPERM exceptions.
* process_request(): Catch base class of EmailAddressError so eitherbwarsaw2004-02-291-2/+2
| | | | MMBadEmailError or MMHostileAddress will be caught.
* __load(): Catch unpicking errors too.bwarsaw2004-02-291-1/+1
|
* main(): The list lock must be held in order to pend unsubscription requests.bwarsaw2004-02-291-12/+13
|
* __repr__(): Watch out for Unicode fullname or password.bwarsaw2004-02-291-4/+14
|
* __handlepost(): sender or subject could be Header instances, so str-ify thembwarsaw2004-02-291-2/+2
| | | | before trying to call replace on them for the rejection notice substitution.
* 2.1.5 beta 1bwarsaw2004-02-291-3/+3
|
* Bump to alpha 4.bwarsaw2004-02-221-2/+2
|
* __repr__(): Added for better logging.bwarsaw2004-02-221-1/+4
|
* Much refactoring to improve bounce processing. The basic change moves thebwarsaw2004-02-221-63/+41
| | | | | | | | | | | | | | | | | | | | | queuing of bounce events out of the process's memory and into a 'bounce event' file, essentially consisting of a stream of pickles. Every once in a while the qrunner wakes up and processes the event file, which is named to be specific to each qrunner instance. The actually processing is factored out into a mixin class which is now subclassed by both the BounceRunner and OutgoingRunner classes (since the latter has to handle SMTP rejects as bounces). Specific changes here include: OutgoingRunner: Use BounceMixin as a base class. We can now get rid of the whole _permfailures and _permfail_counter stuff since we'll just use the mixin class as the basic logic for bounce handling. _dispose(): Simplified since we can just use _queue_bounces() when a message is rejected at SMTP time, although if that triggers a probe, the attached message will be the one for which delivery was attempted since there really isn't any bounce. Also, make this method handle probe bounces.
* Much refactoring to improve bounce processing. The basic change moves thebwarsaw2004-02-221-57/+119
| | | | | | | | | | | | | | | | | | | | | queuing of bounce events out of the process's memory and into a 'bounce event' file, essentially consisting of a stream of pickles. Every once in a while the qrunner wakes up and processes the event file, which is named to be specific to each qrunner instance. The actually processing is factored out into a mixin class which is now subclassed by both the BounceRunner and OutgoingRunner classes (since the latter has to handle SMTP rejects as bounces). Specific changes include: REGISTER_BOUNCES_EVERY: Promote to a Defaults.py.in variable. BounceMixin: Mixin class for handling the basics of bounce event queuing, periodic processing, and registering, as well as cleanup. It also contains a _probe_bounce() method for handling bounces of the probe message (which cause an immediate disable). BounceRunner: Add BounceMixin as a base class.
* sendProbe(): Add key 'probe_token' to the metadata. This is used by thebwarsaw2004-02-221-2/+4
| | | | | OutgoingRunner for easier handling of probe messages which are rejected at SMTP time.
* REGISTER_BOUNCES_EVERY: Promoted to a global configuration variable.bwarsaw2004-02-221-0/+3
|
* InitTempVars(): Initialize _full_path to the empty string, not None.bwarsaw2004-02-191-1/+1
|
* _escape(): Everything except the 'info' variable gets the normal web-safebwarsaw2004-02-171-8/+19
| | | | | escaping. 'info' sanitizes just <script> and </script> tags. This partially closes bugs 870028 and 881369.
* handleForm(): Call out to self._escape() to make any entered data web-safe.bwarsaw2004-02-171-3/+7
| | | | | This allows subclasses to override where necessary. The default implementaton is to call Utils.websafe().
* main(): It's possible that if you're logged in as the list admin, you can getbwarsaw2004-02-171-3/+5
| | | | | | | to the end of the function trying to present the options page for a non-existant user, causing a traceback. At the last second, do one more isMember() check and return the loginpage if the address isn't a member of the list.
* Rewritten, simplified, and made more bullet-proof. The file read/written isbwarsaw2004-02-171-77/+66
| | | | | | | | | | | | | | | | | | | now a pickle instead the less secure marshal. Other changes: __filename(): Removed. We'll use the instance variable __filename instead. __opendb(): Simplified by removing upgrade logic largely duplicated in _UpdateRecords(). __closedb(): Use pickles and the __filename instance variable. __request_id(): Removed this since it wasn't thread-safe. It didn't require the acquisition of the list lock. Replaced with __nextid() which not only asserts the list lock, but also ensures that the id returned will be unique. HoldMessage(): Always flush and fsync the heldmsg file. Various other code improvement.
* enqueue(), dequeue(), files(): Implementation of new, more efficient,bwarsaw2004-02-101-226/+37
| | | | | | | | | | | one-file-per-queued-message architecture. The message object and metadata dictionary are now written to the same .pck file -- in that order -- instead of to separate files which were more complicated to manage. dequeue() especially simplifies considerably. Also, get rid of the special _Switchboard hack, as well as the MarshalSwitchboard, ASCIISwitchboard, and BSDDBSwitchboard implementations. Also get rid of the DumperSwitchboard class.
* _dispose(), verp_probe(): Add logic to parse and handle probe bounce verps.bwarsaw2004-02-101-1/+55
|
* hold_for_approval(): Convert to the new pending database interface.bwarsaw2004-02-101-2/+2
|
* main(), subscription_cancel(), unsubscription_cancel(), addrchange_cancel()bwarsaw2004-02-101-17/+36
| | | | | | | | addrchange_confirm(), heldmsg_cancel(), heldmsg_confirm(), reenable_confirm(): Convert to the new pending database interface. expunge(): A helper function which ensures that the list is locked before expunging an item from the confirmation database.
* Bump the version number to 2.1.5a3. Also bump the PENDING_FILE_SCHEMA_VERSIONbwarsaw2004-02-101-4/+4
| | | | to indicate that we're now saving things in a per-list database.