- port to Cygwin (DLL support, etc.)
[citadel.git] / citadel / dynloader.h
1 /* $Id$ */
2
3 #ifndef DYNLOADER_H
4 #define DYNLOADER_H
5
6 #include "server.h"
7
8 void DLoader_Init(char *pathname);
9 int DLoader_Exec_Cmd(char *cmdbuf);
10 char *Dynamic_Module_Init(void);
11
12 void CtdlRegisterLogHook(void (*fcn_ptr)(char *), int loglevel);
13 void PerformLogHooks(int loglevel, char *logmsg);
14
15
16 void CtdlRegisterSessionHook(void (*fcn_ptr)(void), int EventType);
17 void PerformSessionHooks(int EventType);
18
19 void CtdlRegisterUserHook(void (*fcn_ptr)(char*, long), int EventType);
20 void PerformUserHooks(char *username, long usernum, int EventType);
21
22 void CtdlRegisterXmsgHook(int (*fcn_ptr)(char *, char *, char *), int order);
23 int PerformXmsgHooks(char *, char *, char *);
24
25 void CtdlRegisterMessageHook(int (*handler)(struct CtdlMessage *), int EventType);
26 int PerformMessageHooks(struct CtdlMessage *, int EventType);
27
28 void CtdlRegisterCleanupHook(void (*fcn_ptr)(void));
29 void CtdlRegisterProtoHook(void (*handler)(char *), char *cmd, char *desc);
30 void CtdlRegisterServiceHook(int tcp_port,
31                         char *sockpath,
32                         void (*h_greeting_function) (void),
33                         void (*h_command_function) (void) ) ;
34
35 #endif /* DYNLOADER_H */