[Email-SIG] Re: Mailman and Scrubber.py : problem and possible Solution

Tokio Kikuchi tkikuchi at is.kochi-u.ac.jp
Wed Jan 12 05:20:30 CET 2005


Hi,

Looks like this bug report should go to email-sig at python.


Jan Wolff wrote:

> Dear Mr. Kikuchi,
> 
> I read you are maintaining the file 'Scrubber.py' of Mailman.
> We got some strange problems with one mailing list that
> prevented mailman so send any messages to this list.
> 
> After reading your posting
> http://mail.python.org/pipermail/mailman-i18n/2002-September/000616.html
> in Mailman-Users archive, I was able to identify the message that caused 
> the trouble. It appears to me, that mailman failed to send the message 
> because the filename of an attachment had the character ' in it.
> 
> After removing the message from the shunt-directory, all other messages 
> could be unshunted normally. I have then removed the character ' by 
> overwriting with whitespace in the .pck-file. After that, the 
> trouble-making-message could also be sent.
> 
> Below is the error-message from mailman and an excerpt from the
> original mail with the attachment-part. We are running Mailman version 
> 2.1.5.
> 
> I hope this is helpful. Thanks for your work with Mailman. Its a great 
> piece of software.
> 
> Greetings
> -Jan Wolff
> 
> from prefix-dir/logs/error:
> ---------------------------------------
> Jan 11 18:48:51 2005 (7305) SHUNTING: 
> 1105457671.442827+56adb191ee68a790a3817f1b3fe9c3acfb2fc5b4
> Jan 11 18:48:51 2005 (7305) Uncaught runner exception: unpack list of 
> wrong size
> Jan 11 18:48:51 2005 (7305) Traceback (most recent call last):
>   File "/usr/local/mailman/Mailman/Queue/Runner.py", line 111, in _oneloop
>     self._onefile(msg, msgdata)
>   File "/usr/local/mailman/Mailman/Queue/Runner.py", line 167, in _onefile
>     keepqueued = self._dispose(mlist, msg, msgdata)
>   File "/usr/local/mailman/Mailman/Queue/IncomingRunner.py", line 130, 
> in _dispose
>     more = self._dopipeline(mlist, msg, msgdata, pipeline)
>   File "/usr/local/mailman/Mailman/Queue/IncomingRunner.py", line 153, 
> in _dopipeline
>     sys.modules[modname].process(mlist, msg, msgdata)
>   File "/usr/local/mailman/Mailman/Handlers/ToDigest.py", line 91, in 
> process
>     send_digests(mlist, mboxfp)
>   File "/usr/local/mailman/Mailman/Handlers/ToDigest.py", line 132, in 
> send_digests
>     send_i18n_digests(mlist, mboxfp)
>   File "/usr/local/mailman/Mailman/Handlers/ToDigest.py", line 306, in 
> send_i18n_digests
>     msg = scrubber(mlist, msg)
>   File "/usr/local/mailman/Mailman/Handlers/Scrubber.py", line 265, in 
> process
>     url = save_attachment(mlist, part, dir)
>   File "/usr/local/mailman/Mailman/Handlers/Scrubber.py", line 359, in 
> save_attachment
>     fnext = os.path.splitext(msg.get_filename(''))[1]
>   File "/usr/local/mailman/pythonlib/email/Message.py", line 725, in 
> get_filename
>     filename = self.get_param('filename', missing, 'content-disposition')
>   File "/usr/local/mailman/pythonlib/email/Message.py", line 608, in 
> get_param
>     for k, v in self._get_params_preserve(failobj, header):
>   File "/usr/local/mailman/pythonlib/email/Message.py", line 555, in 
> _get_params_preserve
>     params = Utils.decode_params(params)
>   File "/usr/local/mailman/pythonlib/email/Utils.py", line 337, in 
> decode_params
>     charset, language, value = decode_rfc2231(EMPTYSTRING.join(value))
>   File "/usr/local/mailman/pythonlib/email/Utils.py", line 284, in 
> decode_rfc2231
>     charset, language, s = parts
> ValueError: unpack list of wrong size
> 
> from the original mail:
> ---------------------------------------
> --Apple-Mail-2-109131617
> Content-Transfer-Encoding: base64
> Content-Type: application/msword; x-mac-type=42494E41; x-unix-mode=0644;
>         x-mac-creator=4D535744;
>         name="miriam's file.doc"
> Content-Disposition: attachment;
>         filename*0="miriam's file"; filename*1=ths.doc
> 
> 
> 
> 
> 
> 
> 
> 

-- 
Tokio Kikuchi, tkikuchi@ is.kochi-u.ac.jp
http://weather.is.kochi-u.ac.jp/



More information about the Email-SIG mailing list