Dear clapf-users,

yesterday I was developing the token group feature,
and I discovered a bug introduced in 0.4.5-rc2 with
the faster training feature. Unfortunately the bug
exists in the final 0.4.5 version, too.

You are affected if you are using group_type=1
(=merged groups) AND mysql token database.

The bug causes that your users affect each others'
token set. Whenever a user trains a message, he
effectively trains everyone's else's token set
as well, including the global database.

Unfortunately the " AND uid=..." clause was missing
from a mysql statement.

Solution:

I have updated the 0.4.5 version 3 minutes ago to
include the fix, so you should either

a) apply the attached patch
(cd clapf-0.4.5; patch -p0 < patch1)

OR

b) download the 0.4.5 again from the clapf homepage

THEN

build clapf again. You need to refresh the clapf daemon
and the spamdrop binary.

And I apologise for any inconvinience...

Best regards,
Janos
--- src/mysql.c-orig    2010-09-16 15:09:58.000000000 +0200
+++ src/mysql.c 2010-09-17 09:04:59.692291966 +0200
@@ -179,6 +179,9 @@
       else buffer_cat(query, " AND nspam > 0");
    }
 
+   snprintf(s, SMALLBUFSIZE-1, " AND uid=%ld", sdata->uid);
+   buffer_cat(query, s);
+
    mysql_real_query(&(sdata->mysql), query->data, strlen(query->data));
 
    buffer_destroy(query);

Reply via email to