[Pymilter] Error message I just found

Stuart D. Gathman stuart at bmsi.com
Wed Mar 24 10:31:02 EST 2004


On Wed, 24 Mar 2004, Chris Gonnerman wrote:

> Traceback (most recent call last):
>   File "/usr/lib/python2.2/site-packages/Milter.py", line 138, in 
> closecallback
>     rc = m.close()
> 
> This was followed by an error in my script where I tried to remove a 
> tempfile
> that did not exist; I'm still puzzled as to exactly how that happened.
> 
> The script kept running, and seems to be fine, but I thought someone might
> like to know.

Any uncaught exceptions in a callback to your milter code are reported to
stderr, and the callback immediately returns with Milter.TEMPFAIL.  If the
exception occurs in the close callback, libmilter ignores the return code.

If your milter code gets an exception in any other callback (except abort),
the mail sender will get a "451 4.3.0 Filter failure" error.  The sender
should then try later - after you have noticed the problem in your logs
and fixed it.

In any case, after calling the close callback, Python milter releases
its reference to the user connection object and removes the 
miltermodule connection context and Python threadstate.  Libmilter then 
recycles the libmilter connection context.

-- 
			Stuart D. Gathman <stuart at bmsi.com>
      Business Management Systems Inc.  Phone: 703 591-0911 Fax: 703 591-6154
      "Very few of our customers are going to have a pure Unix
      or pure Windows environment." - Dennis Oldroyd, Microsoft Corporation




More information about the Pymilter mailing list