]> code.citadel.org Git - citadel.git/blobdiff - citadel/modules/spam/serv_spam.c
Eliminated unnecessary complexity by removing support
[citadel.git] / citadel / modules / spam / serv_spam.c
index 64ad1f5cba100bdd7d9703c176e19f2422d2c8d9..b8611f6444e75a8a3b1a024287559bd69db048d9 100644 (file)
@@ -34,6 +34,7 @@
 #include <string.h>
 #include <limits.h>
 #include <sys/socket.h>
+#include <libcitadel.h>
 #include "citadel.h"
 #include "server.h"
 #include "citserver.h"
@@ -45,7 +46,6 @@
 #include "policy.h"
 #include "database.h"
 #include "msgbase.h"
-#include "tools.h"
 #include "internet_addressing.h"
 #include "domain.h"
 #include "clientsocket.h"
@@ -118,14 +118,14 @@ int spam_assassin(struct CtdlMessage *msg) {
        
        /* Response */
        lprintf(CTDL_DEBUG, "Awaiting response\n");
-        if (sock_gets(sock, buf) < 0) {
+        if (sock_getln(sock, buf, sizeof buf) < 0) {
                 goto bail;
         }
         lprintf(CTDL_DEBUG, "<%s\n", buf);
        if (strncasecmp(buf, "SPAMD", 5)) {
                goto bail;
        }
-        if (sock_gets(sock, buf) < 0) {
+        if (sock_getln(sock, buf, sizeof buf) < 0) {
                 goto bail;
         }
         lprintf(CTDL_DEBUG, "<%s\n", buf);
@@ -137,7 +137,7 @@ int spam_assassin(struct CtdlMessage *msg) {
                if (msg->cm_fields['0'] != NULL) {
                        free(msg->cm_fields['0']);
                }
-               msg->cm_fields['0'] = strdup("5.7.1 message rejected by spam filter");
+               msg->cm_fields['0'] = strdup("message rejected by spam filter");
        }
 
 bail:  close(sock);
@@ -148,8 +148,11 @@ bail:      close(sock);
 
 CTDL_MODULE_INIT(spam)
 {
-       CtdlRegisterMessageHook(spam_assassin, EVT_SMTPSCAN);
-
+       if (!threading)
+       {
+               CtdlRegisterMessageHook(spam_assassin, EVT_SMTPSCAN);
+       }
+       
        /* return our Subversion id for the Log */
         return "$Id$";
 }