TDAP: add facility to protect usetable entries from being deleted while still needed.
[citadel.git] / citadel / serv_extensions.h
index 0ef8e14083337390e5c3b697eebe785c6c3565c0..de8502648f6ea42295aca05056841cd0e5dae60d 100644 (file)
 /*
  */
 
-typedef void (*CtdlDbgFunction) (void);
+typedef void (*CtdlDbgFunction) (const int);
+
+extern int DebugModules;
+#define MDBGLOG(LEVEL) if ((LEVEL != LOG_DEBUG) || (DebugModules != 0))
+
+#define MOD_syslog(LEVEL, FORMAT, ...)                         \
+       MDBGLOG(LEVEL) syslog(LEVEL,                            \
+                             "Modules: " FORMAT, __VA_ARGS__)
+
+#define MODM_syslog(LEVEL, FORMAT)                     \
+       MDBGLOG(LEVEL) syslog(LEVEL,                    \
+                             "Modules: " FORMAT);
+
+
 
 
 /*
@@ -51,6 +63,9 @@ char *Dynamic_Module_Init(void);
 void CtdlDestroySessionHooks(void);
 void PerformSessionHooks(int EventType);
 
+int CheckTDAPVeto (int DBType, StrBuf *ErrMsg);
+void CtdlDestroyTDAPVetoHooks(void);
+
 void CtdlDestroyUserHooks(void);
 void PerformUserHooks(struct ctdluser *usbuf, int EventType);
 
@@ -85,7 +100,7 @@ void CtdlDestroySearchHooks(void);
 void CtdlDestroyFixedOutputHooks(void);
 int PerformFixedOutputHooks(char *, char *, int);
 
-void CtdlRegisterDebugFlagHook(const char *Name, long len, CtdlDbgFunction F);
+void CtdlRegisterDebugFlagHook(const char *Name, long len, CtdlDbgFunction F, const int *);
 void CtdlSetDebugLogFacilities(const char **Str, long n);
 void CtdlDestroyDebugTable(void);