From 31be939d5b772b1e57094de7f96a74cb95e1eaf7 Mon Sep 17 00:00:00 2001 From: Art Cancro Date: Sun, 9 Jun 2002 23:59:38 +0000 Subject: [PATCH] * Started working on the spam filter --- citadel/ChangeLog | 4 +++- citadel/Makefile.in | 7 ++++++- citadel/citadel.h | 1 + citadel/serv_ical.c | 15 --------------- citadel/serv_inetcfg.c | 13 +++++++------ 5 files changed, 17 insertions(+), 23 deletions(-) diff --git a/citadel/ChangeLog b/citadel/ChangeLog index 0a8ba560f..ff1bd4cd9 100644 --- a/citadel/ChangeLog +++ b/citadel/ChangeLog @@ -1,4 +1,7 @@ $Log$ + Revision 591.37 2002/06/09 23:59:38 ajc + * Started working on the spam filter + Revision 591.36 2002/06/07 22:10:51 ajc * Added a new message function hook type EVT_SMTPSCAN which permits modules to register hooks that can scan incoming SMTP messages and elect to reject them @@ -3697,4 +3700,3 @@ Sat Jul 11 00:20:48 EDT 1998 Nathan Bryant Fri Jul 10 1998 Art Cancro * Initial CVS import - diff --git a/citadel/Makefile.in b/citadel/Makefile.in index 5cb7aeebe..765e989bc 100644 --- a/citadel/Makefile.in +++ b/citadel/Makefile.in @@ -30,6 +30,7 @@ SERV_MODULES=modules/libchat.la modules/libvcard.la \ $(SMTP) \ modules/libpop3.la \ modules/libmrtg.la \ + modules/libspam.la \ modules/libimap.la \ modules/libnetwork.la \ modules/libnetfilter.la \ @@ -77,7 +78,7 @@ DOMAIN=@DOMAIN@ SOURCES=aidepost.c citadel.c citmail.c citserver.c client_chat.c \ client_crypto.c commands.c config.c control.c $(DATABASE) \ dynloader.c file_ops.c housekeeping.c ipc_c_tcp.c locate_host.c \ - logging.c messages.c msgbase.c msgform.c \ + logging.c messages.c msgbase.c msgform.c serv_spam.c \ policy.c readlog.c migratenet.c screen.c serv_mrtg.c \ room_ops.c rooms.c routines.c routines2.c serv_chat.c serv_crypto.c \ serv_info.c serv_test.c setup.c snprintf.c stats.c serv_vcard.c \ @@ -87,6 +88,7 @@ SOURCES=aidepost.c citadel.c citmail.c citserver.c client_chat.c \ serv_smtp.c serv_pop3.c internet_addressing.c parsedate.c genstamp.c \ $(DOMAIN) clientsocket.c serv_inetcfg.c serv_rwho.c serv_bio.c \ client_passwords.c imap_misc.c serv_netfilter.c serv_mrtg.c \ + serv_spam.c \ serv_imap.c imap_tools.c imap_fetch.c imap_search.c imap_store.c \ serv_network.c serv_pas2.c serv_ical.c md5.c server_main.c @@ -158,6 +160,9 @@ modules/libpop3.la: serv_pop3.lo md5.lo $(LIBTOOL) libcitserver.la modules/libmrtg.la: serv_mrtg.lo md5.lo $(LIBTOOL) libcitserver.la $(LTSHARE) -o libmrtg.la ../serv_mrtg.lo ../md5.lo ../libcitserver.la +modules/libspam.la: serv_spam.lo md5.lo $(LIBTOOL) libcitserver.la + $(LTSHARE) -o libspam.la ../serv_spam.lo ../md5.lo ../libcitserver.la + modules/libinetcfg.la: serv_inetcfg.lo $(LIBTOOL) libcitserver.la $(LTSHARE) -o libinetcfg.la ../serv_inetcfg.lo ../libcitserver.la diff --git a/citadel/citadel.h b/citadel/citadel.h index 841be3860..ac708f6da 100644 --- a/citadel/citadel.h +++ b/citadel/citadel.h @@ -284,6 +284,7 @@ enum { #define IGNETCFG "application/x-citadel-ignet-config" #define IGNETMAP "application/x-citadel-ignet-map" #define FILTERLIST "application/x-citadel-filter-list" +#define SPAMSTRINGS "application/x-citadel-spam-strings" #define TRACE lprintf(9, "Checkpoint: %s, %d\n", __FILE__, __LINE__) diff --git a/citadel/serv_ical.c b/citadel/serv_ical.c index ccaacf343..bae86f404 100644 --- a/citadel/serv_ical.c +++ b/citadel/serv_ical.c @@ -61,13 +61,6 @@ void ical_create_room(void) } -/* User is reading a message */ -int ical_obj_beforeread(struct CtdlMessage *msg) -{ - return 0; -} - - /* See if we need to prevent the object from being saved */ int ical_obj_beforesave(struct CtdlMessage *msg) { @@ -114,20 +107,12 @@ int ical_obj_beforesave(struct CtdlMessage *msg) } -/* aftersave processing */ -int ical_obj_aftersave(struct CtdlMessage *msg) -{ - return 0; -} - /* Register this module with the Citadel server. */ char *Dynamic_Module_Init(void) { CtdlRegisterSessionHook(ical_create_room, EVT_LOGIN); - CtdlRegisterMessageHook(ical_obj_beforeread, EVT_BEFOREREAD); CtdlRegisterMessageHook(ical_obj_beforesave, EVT_BEFORESAVE); - CtdlRegisterMessageHook(ical_obj_aftersave, EVT_AFTERSAVE); CtdlRegisterProtoHook(cmd_ical, "ICAL", "Register iCalendar support"); return "$Id$"; } diff --git a/citadel/serv_inetcfg.c b/citadel/serv_inetcfg.c index 99ad26586..658bdce55 100644 --- a/citadel/serv_inetcfg.c +++ b/citadel/serv_inetcfg.c @@ -88,12 +88,13 @@ int inetcfg_aftersave(struct CtdlMessage *msg) { linelen = strcspn(ptr, "\n"); if (linelen == 0) return(0); /* end of headers */ - if ( (!strncasecmp(ptr, "Content-type: ", 14)) - && (!strncasecmp(&ptr[14], INTERNETCFG, - strlen(INTERNETCFG) )) ) { - /* Bingo! The user is changing configs. - */ - inetcfg_setTo(msg); + if (!strncasecmp(ptr, "Content-type: ", 14)) { + if (!strncasecmp(&ptr[14], INTERNETCFG, + strlen(INTERNETCFG))) { + /* Bingo! The user is changing configs. + */ + inetcfg_setTo(msg); + } } ptr = strchr((char *)ptr, '\n'); -- 2.39.2