Tags: bugs, developers, hosting, pyzor, sarcasm, software, sourceforge, spam, spamassassin
If you’re using Pyzor to help you block spam (a lot of people use it alongside SpamAssassin), then you’ve probably run into these nasty “pyzor: check failed: internal error” messages in your maillog since July 21st.
After digging into on my own a bit, I found two things. The first was the “InternalError” was being caused by a corrupt “servers” file that contained nothing but “File Not Found” information. The second was that the “discover” command line was returning:
downloading servers from http://pyzor.sourceforge.net/cgi-bin/inform-servers-0-3-x
Traceback (most recent call last):
File “/usr/bin/pyzor”, line 4, in ?
File “/usr/lib/python2.4/site-packages/pyzor/client.py”, line 991, in run
File “/usr/lib/python2.4/site-packages/pyzor/client.py”, line 185, in run
self.servers = self.get_servers(servers_fn)
File “/usr/lib/python2.4/site-packages/pyzor/client.py”, line 410, in get_servers
File “/usr/lib/python2.4/site-packages/pyzor/client.py”, line 119, in read
File “/usr/lib/python2.4/site-packages/pyzor/__init__.py”, line 458, in from_str
fields = int(fields)
IndexError: list index out of range
Obviously, linking to non-existent files, especially in the /cgi-bin/ directory, is a bad thing.
As a temporary measure, simply disable your “pyzor discover” cron job, and manually add “126.96.36.199:24441” into your “servers” file (wherever it may be with your configuration).