When spammers send junk to my lists, its caught by Mailman and it winds
up in the administrative requests.
However, some of them put characters in the subject thats out of the
usual ascii range. Something like, [EMAIL PROTECTED]
And then when I try to deal with the message, Mailman gives me error
messages. It said,
Bug in Mailman version 2.1.6
We're sorry, we hit a bug!
Please inform the webmaster for this site of this problem. Printing of
traceback and other system information has been explicitly inhibited,
but the webmaster can find this information in the Mailman error logs.
Looking at the mailman error log, I found,
Jul 11 17:06:23 2005 admin(82489):
admin(82489): [- Mailman Version: 2.1.6 -]
admin(82489): [- Traceback --]
admin(82489): Traceback (most recent call last):
admin(82489): File /usr/local/mailman/scripts/driver, line 101, in
run_main
admin(82489): main()
admin(82489): File /usr/local/mailman/Mailman/Cgi/admindb.py, line
163, in m
ain
admin(82489): process_form(mlist, doc, cgidata)
admin(82489): File /usr/local/mailman/Mailman/Cgi/admindb.py, line
713, in p
rocess_form
admin(82489): forward, forwardaddr)
admin(82489): File /usr/local/mailman/Mailman/ListAdmin.py, line
167, in Han
dleRequest
admin(82489): forward, addr)
admin(82489): File /usr/local/mailman/Mailman/ListAdmin.py, line
353, in __h
andlepost
admin(82489): syslog('vette', note)
admin(82489): File /usr/local/mailman/Mailman/Logging/Syslog.py,
line 40, in
write
admin(82489): self.write_ex(kind, msg, args, kws)
admin(82489): File /usr/local/mailman/Mailman/Logging/Syslog.py,
line 58, in
write_ex
admin(82489): logf.write(msg + '\n')
admin(82489): File
/usr/local/mailman/Mailman/Logging/StampedLogger.py, line
73, in write
admin(82489): Logger.write(self, %s %s % (prefix, msg))
admin(82489): File /usr/local/mailman/Mailman/Logging/Logger.py,
line 91, in
write
admin(82489): f.write(msg)
admin(82489): UnicodeError: ASCII encoding error: ordinal not in
range(128)
admin(82489): [- Python Information -]
admin(82489): sys.version = 2.2.2 (#1, Mar 22 2003, 15:26:17)
[GCC 2.95.4 20020320 [FreeBSD]]
admin(82489): sys.executable = /usr/local/bin/python
admin(82489): sys.prefix = /usr/local
admin(82489): sys.exec_prefix = /usr/local
admin(82489): sys.path= /usr/local
admin(82489): sys.platform= freebsd4
admin(82489): [- Environment Variables -]
admin(82489): PATH_INFO: /rec.food.sourdough
admin(82489): HTTP_ACCEPT:
text/xml,application/xml,application/xhtml+xml,text
/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
admin(82489): CONTENT_TYPE: application/x-www-form-urlencoded
admin(82489): HTTP_REFERER:
http://www.otherwhen.com/mailman/admindb/rec.food.
sourdough
admin(82489): SERVER_SOFTWARE: Apache/1.3.33 (Unix) PHP/4.3.11
admin(82489): PYTHONPATH: /usr/local/mailman
admin(82489): SCRIPT_FILENAME: /usr/local/mailman/cgi-bin/admindb
admin(82489): SERVER_ADMIN: [EMAIL PROTECTED]
admin(82489): SCRIPT_NAME: /mailman/admindb
admin(82489): SERVER_SIGNATURE: ADDRESSApache/1.3.33 Server at
www.otherwhen
.com Port 80/ADDRESS
admin(82489):
admin(82489): REQUEST_METHOD: POST
admin(82489): HTTP_HOST: www.otherwhen.com
admin(82489): HTTP_KEEP_ALIVE: 300
admin(82489): SERVER_PROTOCOL: HTTP/1.1
admin(82489): QUERY_STRING:
admin(82489): PATH_TRANSLATED: /usr/local/www/data/rec.food.sourdough
admin(82489): REQUEST_URI: /mailman/admindb/rec.food.sourdough
admin(82489): CONTENT_LENGTH: 191
admin(82489): HTTP_ACCEPT_CHARSET: ISO-8859-1,utf-8;q=0.7,*;q=0.7
admin(82489): HTTP_USER_AGENT: Mozilla/5.0 (Windows; U; Windows NT
5.0; en-US;
rv:1.7.8) Gecko/20050511 Firefox/1.0.4
admin(82489): HTTP_CONNECTION: keep-alive
admin(82489): HTTP_COOKIE:
rec.food.sourdough+admin=2802006978f8d242732800
3865373336373439653535346264353335386636393538313266616536636262376531363062
3237;
rec.food.baking+admin=2802006982f9d2427328006563393331313332303039
386532353239643233616636383361616334323038303634353937
admin(82489): SERVER_NAME: www.otherwhen.com
admin(82489): REMOTE_ADDR: 192.168.2.10
admin(82489): REMOTE_PORT: 2378
admin(82489): HTTP_ACCEPT_LANGUAGE: en-us,en;q=0.5
admin(82489): UNIQUE_ID: QtL7bsCoAgMAAUIcZas
admin(82489): SERVER_PORT: 80
admin(82489): GATEWAY_INTERFACE: CGI/1.1
admin(82489): HTTP_ACCEPT_ENCODING: gzip,deflate
admin(82489): SERVER_ADDR: 192.168.2.3
admin(82489): DOCUMENT_ROOT: /usr/local/www/data
The key seems to be the line, admin(82489): UnicodeError: ASCII
encoding error: ordinal not in range(128)
At this point, my work-around is to clear the administrative requests
from another list and copy the request.pck and pending.pck files from
the list thats OK to the