diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/extern.h | 1 | ||||
| -rw-r--r-- | include/services.h | 9 |
2 files changed, 8 insertions, 2 deletions
diff --git a/include/extern.h b/include/extern.h index 7901245d4..5bbb39540 100644 --- a/include/extern.h +++ b/include/extern.h @@ -623,7 +623,6 @@ E void pmodule_cmd_318(void (*func) (const char *source, const char *who)); E void pmodule_cmd_242(void (*func) (const char *buf)); E void pmodule_cmd_243(void (*func) (const char *buf)); E void pmodule_cmd_211(void (*func) (const char *buf)); -E void pmodule_cmd_jupe(void (*func) (const char *jserver, const char *who, const char *reason)); E void pmodule_set_umode(void (*func) (User * user, int ac, const char **av)); E void pmodule_valid_nick(int (*func) (const char *nick)); E void pmodule_valid_chan(int (*func) (const char *chan)); diff --git a/include/services.h b/include/services.h index c9f0d549f..58d24bc8f 100644 --- a/include/services.h +++ b/include/services.h @@ -1073,7 +1073,6 @@ typedef struct ircd_proto_ { void (*ircd_cmd_242)(const char *buf); void (*ircd_cmd_243)(const char *buf); void (*ircd_cmd_211)(const char *buf); - void (*ircd_cmd_jupe)(const char *jserver, const char *who, const char *reason); void (*ircd_set_umode)(User *user, int ac, const char **av); int (*ircd_valid_nick)(const char *nick); int (*ircd_valid_chan)(const char *chan); @@ -1365,6 +1364,14 @@ class IRCDProtoNew { virtual void cmd_swhois(const char *, const char *, const char *) { } virtual void cmd_eob() { } virtual void cmd_server(const char *, int, const char *) = 0; + virtual void cmd_jupe(const char *jserver, const char *who, const char *reason) + { + char rbuf[256]; + snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who, reason ? ": " : "", reason ? reason : ""); + if (findserver(servlist, jserver)) cmd_squit(jserver, rbuf); + cmd_server(jserver, 2, rbuf); + new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL); + } }; /*************************************************************************/ |
