summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/protocol/inspircd12.cpp10
1 files changed, 10 insertions, 0 deletions
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;
}