$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
Fri Jul 10 1998 Art Cancro <ajc@uncensored.citadel.org>
* Initial CVS import
-
$(SMTP) \
modules/libpop3.la \
modules/libmrtg.la \
+ modules/libspam.la \
modules/libimap.la \
modules/libnetwork.la \
modules/libnetfilter.la \
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 \
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
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
#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__)
}
-/* 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)
{
}
-/* 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$";
}
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');