summaryrefslogtreecommitdiff
path: root/src/ircd.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ircd.c')
-rw-r--r--src/ircd.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/ircd.c b/src/ircd.c
index 67b336b47..d40b9968c 100644
--- a/src/ircd.c
+++ b/src/ircd.c
@@ -24,6 +24,7 @@ int UseTSMODE;
**/
void initIrcdProto()
{
+ ircdproto.ircd_set_mod_current_buffer = NULL;
ircdproto.ircd_set_umode = NULL;
ircdproto.ircd_cmd_svsnoop = NULL;
ircdproto.ircd_cmd_remove_akill = NULL;
@@ -96,6 +97,17 @@ void initIrcdProto()
ircdproto.ircd_cmd_ctcp = NULL;
}
+/* Special function, returns 1 if executed, 0 if not */
+int anope_set_mod_current_buffer(int ac, char **av)
+{
+ if (ircdproto.ircd_set_mod_current_buffer) {
+ ircdproto.ircd_set_mod_current_buffer(ac, av);
+ return 1;
+ }
+
+ return 0;
+}
+
void anope_set_umode(User * user, int ac, char **av)
{
ircdproto.ircd_set_umode(user, ac, av);
@@ -601,6 +613,11 @@ void anope_cmd_ctcp(char *source, char *dest, const char *fmt, ...)
* Set routines for modules to set the prefered function for dealing with things.
**/
+void pmodule_set_mod_current_buffer(void (*func) (int ac, char **av))
+{
+ ircdproto.ircd_set_mod_current_buffer = func;
+}
+
void pmodule_cmd_svsnoop(void (*func) (char *server, int set))
{
ircdproto.ircd_cmd_svsnoop = func;