From 2de0dddb1c86b332b000d60dbdd81abe4f82cdb1 Mon Sep 17 00:00:00 2001 From: Sadie Powell Date: Sun, 14 Jul 2024 16:38:40 +0100 Subject: Fix joining channels with keys on InspIRCd v3. --- docs/Changes | 1 + modules/protocol/inspircd3.cpp | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/Changes b/docs/Changes index 0cdb2d851..e6e6a0e5f 100644 --- a/docs/Changes +++ b/docs/Changes @@ -8,6 +8,7 @@ Fixed expiring channel suspensions. Fixed expiring forbids. Fixed expiring nick suspensions. Fixed feature detection on InspIRCd. +Fixed joining users to channels with a key set on InspIRCd. Fixed logging users out fully when their nick gets suspended. Fixed marking boolean columns in SQL as TEXT instead of INT. Fixed matching extbans on InspIRCd and implement missing matchers. diff --git a/modules/protocol/inspircd3.cpp b/modules/protocol/inspircd3.cpp index 16a6ba1d4..d3a717a3f 100644 --- a/modules/protocol/inspircd3.cpp +++ b/modules/protocol/inspircd3.cpp @@ -394,9 +394,12 @@ class InspIRCd3Proto : public IRCDProto SendAddLine("Z", x->GetHost(), timeleft, x->by, x->GetReason()); } - void SendSVSJoin(const MessageSource &source, User *u, const Anope::string &chan, const Anope::string &other) anope_override + void SendSVSJoin(const MessageSource &source, User *u, const Anope::string &chan, const Anope::string &key) anope_override { - UplinkSocket::Message(source) << "SVSJOIN " << u->GetUID() << " " << chan; + if (key.empty()) + UplinkSocket::Message(source) << "SVSJOIN " << u->GetUID() << " " << chan; + else + UplinkSocket::Message(source) << "SVSJOIN " << u->GetUID() << " " << chan << " :" << key; } void SendSVSPart(const MessageSource &source, User *u, const Anope::string &chan, const Anope::string ¶m) anope_override -- cgit