So far I found that in the if test in libdspam.c:554 (inside dspam_process) both CTX->message and message are 0x0, so the test fails and _ds_actualize_message() is never called. Therefore, _ds_degenerate_message() complains and segfaults.
dspam_process() is called from user_classify() and looking at a backtrace, message is already NULL there. So let's take a look at the function that calls user_classify(): it's ensure_confident_result() that gets the dspam and agent contexts and returns result. Sure enough, at dspam.c:2814, there's a call to user_classify with the message being NULL.
Reading the description of user_classify(), it seems that the message is optional ("if performing message-based ciassification"), however in this case we are doing exactly that.
At this point I need someone with more indepth understanding of dspam to figure out if this is a bug and how it can be properly fixed.
-- Jure Pečar http://jure.pecar.orgReceived on Mon Nov 14 08:24:41 2005
This archive was generated by hypermail 2.1.8 : Wed Nov 30 2005 - 00:00:00 EST