]> jfr.im git - irc/quakenet/newserv.git/blobdiff - core/error.h
HELPMOD2: don't ignore +h clients
[irc/quakenet/newserv.git] / core / error.h
index 8cda6406df1cb385dcfb83bc5a6491afbe772a36..ac15c4253016fa48fae2e746161b7f376561b05b 100644 (file)
@@ -1,3 +1,6 @@
+#ifndef __ERROR_H
+#define __ERROR_H
+
 /* error.h:
  *
  * Error flagging routines 
@@ -44,4 +47,17 @@ struct error_event {
   char *source;
 };
 
-void Error(char *source, int severity, char *reason, ... );
+typedef void (*CoreHandlerFn)(void *arg);
+
+typedef struct corehandler {
+  void *arg;
+  CoreHandlerFn fn;
+  struct corehandler *prev, *next;
+} corehandler;
+
+void Error(char *source, int severity, char *reason, ... ) __attribute__ ((format (printf, 3, 4)));
+
+corehandler *registercorehandler(CoreHandlerFn fn, void *arg);
+void deregistercorehandler(corehandler *c);
+
+#endif