Switched back to the old style thread architecture in preparation for eventual migrat...
[citadel.git] / citadel / include / ctdl_module.h
index c0a13c89d5d5a72c43f8bbd8505a325542745647..b452f5c05e734b06bcba166ba996c823514a9b8a 100644 (file)
@@ -24,6 +24,7 @@
 #include <signal.h>
 #include <pwd.h>
 #include <errno.h>
+#include <syslog.h>
 #include <sys/types.h>
 
 #if TIME_WITH_SYS_TIME
 
 #define CTDL_UPGRADE_CALL(module_name) ctdl_module_##module_name##_upgrade ()
 
-
-/*
- * Prototype for making log entries in Citadel.
- */
-
-void CtdlLogPrintf(enum LogLevel loglevel, const char *format, ...);
-
 #define CtdlAideMessage(TEXT, SUBJECT) quickie_message("Citadel",NULL,NULL,AIDEROOM,TEXT,FMT_CITADEL,SUBJECT) 
-
 /*
  * Hook functions available to modules.
  */
 
 void CtdlRegisterSessionHook(void (*fcn_ptr)(void), int EventType);
 void CtdlUnregisterSessionHook(void (*fcn_ptr)(void), int EventType);
+void CtdlShutdownServiceHooks(void);
 
 void CtdlRegisterUserHook(void (*fcn_ptr)(struct ctdluser *), int EventType);
 void CtdlUnregisterUserHook(void (*fcn_ptr)(struct ctdluser *), int EventType);
@@ -155,37 +149,7 @@ int CtdlDoDirectoryServiceFunc(char *cn, char *ou, void **object, char *module,
  */
 void CtdlModuleStartCryptoMsgs(char *ok_response, char *nosup_response, char *error_response);
 
-
-/*
- * Citadel Threads API
- */
-struct CtdlThreadNode *CtdlThreadCreate(char *name, long flags, void *(*thread_func) (void *arg), void *args);
-void CtdlThreadSleep(int secs);
-void CtdlThreadStop(struct CtdlThreadNode *thread);
-int CtdlThreadCheckStop(void);
-/* void CtdlThreadCancel2(struct CtdlThreadNode *thread); Leave this out, it should never be needed */
-const char *CtdlThreadName(const char *name);
-struct CtdlThreadNode *CtdlThreadSelf(void);
-int CtdlThreadGetCount(void);
-int CtdlThreadGetWorkers(void);
-double CtdlThreadGetWorkerAvg(void);
-double CtdlThreadGetLoadAvg(void);
-void CtdlThreadGC(void);
-void CtdlThreadStopAll(void);
-int CtdlThreadSelect(int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout);
-void CtdlThreadAllocTSD(void);
-
-#define CTDLTHREAD_BIGSTACK    0x0001
-#define CTDLTHREAD_WORKER      0x0002
-
-/* Macros to speed up getting outr thread */
-
-#define MYCURSORS      (((ThreadTSD*)pthread_getspecific(ThreadKey))->cursors)
-#define MYTID          (((ThreadTSD*)pthread_getspecific(ThreadKey))->tid)
-#define CT             (((ThreadTSD*)pthread_getspecific(ThreadKey))->self)
-#define CTP            ((ThreadTSD*)pthread_getspecific(ThreadKey))
-
-/** return the current context list as an array and do it in a safe manner
+/* return the current context list as an array and do it in a safe manner
  * The returned data is a copy so only reading is useful
  * The number of contexts is returned in count.
  * Beware, this does not copy any of the data pointed to by the context.