]> jfr.im git - irc/quakenet/newserv.git/blobdiff - core/error.h
CHANSERV: remove accidental sendemail from SETEMAIL command.
[irc/quakenet/newserv.git] / core / error.h
index 8d3f20233980780bcff00e20254a529ae2cf5ce1..ac15c4253016fa48fae2e746161b7f376561b05b 100644 (file)
@@ -1,3 +1,6 @@
+#ifndef __ERROR_H
+#define __ERROR_H
+
 /* error.h:
  *
  * Error flagging routines 
 struct error_event {
   int severity;
   char *message;
+  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