* GNU General Public License for more details.
*/
-#include "sysdep.h"
#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <dirent.h>
-#include <string.h>
-#include <limits.h>
-#include <ctype.h>
-#include <syslog.h>
#include <libcitadel.h>
-#include "citadel.h"
-#include "server.h"
-#include "serv_extensions.h"
-#include "sysdep_decls.h"
-#include "msgbase.h"
-#include "config.h"
+#include "sysdep_decls.h"
#include "modules/crypto/serv_crypto.h" /* Needed until a universal crypto startup hook is implimented for CtdlStartTLS */
+#include "serv_extensions.h"
#include "ctdl_module.h"
typedef struct MessageFunctionHook MessageFunctionHook;
struct MessageFunctionHook {
MessageFunctionHook *next;
- int (*h_function_pointer) (struct CtdlMessage *msg);
+ int (*h_function_pointer) (struct CtdlMessage *msg, recptypes *recps);
int eventtype;
};
MessageFunctionHook *MessageHookTable = NULL;
}
-void CtdlRegisterMessageHook(int (*handler)(struct CtdlMessage *),
+void CtdlRegisterMessageHook(int (*handler)(struct CtdlMessage *, recptypes *),
int EventType)
{
}
-void CtdlUnregisterMessageHook(int (*handler)(struct CtdlMessage *),
+void CtdlUnregisterMessageHook(int (*handler)(struct CtdlMessage *, recptypes *),
int EventType)
{
MessageFunctionHook *cur, *p, *last;
}
}
-int PerformMessageHooks(struct CtdlMessage *msg, int EventType)
+int PerformMessageHooks(struct CtdlMessage *msg, recptypes *recps, int EventType)
{
MessageFunctionHook *fcn = NULL;
int total_retval = 0;
*/
for (fcn = MessageHookTable; fcn != NULL; fcn = fcn->next) {
if (fcn->eventtype == EventType) {
- total_retval = total_retval + (*fcn->h_function_pointer) (msg);
+ total_retval = total_retval + (*fcn->h_function_pointer) (msg, recps);
}
}