diff options
author | Adam- <Adam-@5417fbe8-f217-4b02-8779-1006273d7864> | 2010-05-23 20:46:29 +0000 |
---|---|---|
committer | Adam- <Adam-@5417fbe8-f217-4b02-8779-1006273d7864> | 2010-05-23 20:46:29 +0000 |
commit | 6e7479170ee904c8e132a2373261e3f35843344d (patch) | |
tree | d0a88ea2e79fe81925b0540aec54d6875325a6c3 | |
parent | 543e0d770a99bfa2e289bf9e78806fd09a14a294 (diff) |
Fixed bug #1167 - Fixed rsquitting juped servers on InspIRCd1.2+
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2980 5417fbe8-f217-4b02-8779-1006273d7864
-rw-r--r-- | docs/Changes | 1 | ||||
-rw-r--r-- | src/protocol/inspircd12.cpp | 10 |
2 files changed, 11 insertions, 0 deletions
diff --git a/docs/Changes b/docs/Changes index d73c1c190..17b91ebd6 100644 --- a/docs/Changes +++ b/docs/Changes @@ -27,6 +27,7 @@ F A bad pointer passed to the OnDelEvent which could cause some 3rd party module F CS FORBID allows to you forbid unregistered channels F The -nothird command line option to work F ms_rsend to really work +F SQUITing juped servers on InspIRCd1.2+ Anope Version 1.9.1 -------------------- diff --git a/src/protocol/inspircd12.cpp b/src/protocol/inspircd12.cpp index 0b7e0b2e8..2c53e4b8d 100644 --- a/src/protocol/inspircd12.cpp +++ b/src/protocol/inspircd12.cpp @@ -689,7 +689,17 @@ int anope_event_squit(const char *source, int ac, const char **av) int anope_event_rsquit(const char *source, int ac, const char **av) { + /* On InspIRCd we must send a SQUIT when we recieve RSQUIT for a server we have juped */ + Server *s = findserver(servlist, av[0]); + if (!s) + s = findserver_uid(servlist, av[0]); + if (s && s->HasFlag(SERVER_JUPED)) + { + send_cmd(TS6SID, "SQUIT %s :%s", s->suid, ac > 1 ? av[1] : ""); + } + do_squit(source, ac, av); + return MOD_CONT; } |