diff options
| author | lethality <lethality@anope.org> | 2012-02-23 00:04:36 +0000 |
|---|---|---|
| committer | lethality <lethality@anope.org> | 2012-02-23 00:04:36 +0000 |
| commit | f01aab5f9bf5c14162438d1707e6e6cd9730c703 (patch) | |
| tree | 4df360cd61e7dd1fd749d90e9dbe9e3cf1d739af /modules/protocol/inspircd20.cpp | |
| parent | 826de43724d4584f9150a1fb8cebe8f49d9431a7 (diff) | |
| parent | 3850b073ddf610415de54dced9ff134397779676 (diff) | |
Merge branch '1.9' of ssh://anope.git.sf.net/gitroot/anope/anope into 1.9
Diffstat (limited to 'modules/protocol/inspircd20.cpp')
| -rw-r--r-- | modules/protocol/inspircd20.cpp | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/modules/protocol/inspircd20.cpp b/modules/protocol/inspircd20.cpp index 619afdbde..f58f6e172 100644 --- a/modules/protocol/inspircd20.cpp +++ b/modules/protocol/inspircd20.cpp @@ -17,10 +17,11 @@ static bool has_chghostmod = false; static bool has_chgidentmod = false; static bool has_globopsmod = true; // Not a typo +static bool has_rlinemod = false; #include "inspircd-ts6.h" -IRCDVar myIrcd[] = { - {"InspIRCd 2.0", /* ircd name */ +IRCDVar myIrcd = { + "InspIRCd 2.0", /* ircd name */ "+I", /* Modes used by pseudoclients */ 1, /* SVSNICK */ 1, /* Vhost */ @@ -42,9 +43,6 @@ IRCDVar myIrcd[] = { "$", /* TLD Prefix for Global */ 20, /* Max number of modes we can send per line */ 1, /* IRCd sends a SSL users certificate fingerprint */ - } - , - {NULL} }; static bool has_servicesmod = false; @@ -58,9 +56,9 @@ class InspIRCdProto : public InspIRCdTS6Proto UplinkSocket::Message() << "CAPAB CAPABILITIES :PROTOCOL=1202"; UplinkSocket::Message() << "CAPAB END"; SendServer(Me); - UplinkSocket::Message(Config->Numeric) << "BURST"; + UplinkSocket::Message(Me) << "BURST"; Module *enc = ModuleManager::FindFirstOf(ENCRYPTION); - UplinkSocket::Message(Config->Numeric) << "VERSION :Anope-" << Anope::Version() << " " << Me->GetName() << " :" << ircd->name <<" - (" << (enc ? enc->name : "unknown") << ") -- " << Anope::VersionBuildString(); + UplinkSocket::Message(Me) << "VERSION :Anope-" << Anope::Version() << " " << Me->GetName() << " :" << ircd->name <<" - (" << (enc ? enc->name : "unknown") << ") -- " << Anope::VersionBuildString(); } }; @@ -559,8 +557,16 @@ class Inspircd20IRCdMessage : public InspircdIRCdMessage Anope::string module; while (ssep.GetToken(module)) + { if (module.equals_cs("m_svshold.so")) has_svsholdmod = true; + else if (module.find("m_rline.so") == 0) + { + has_rlinemod = true; + if (!Config->RegexEngine.empty() && Config->RegexEngine != module.substr(11)) + Log() << "Warning: InspIRCd is using regex engine " << module.substr(11) << ", but we have " << Config->RegexEngine << ". This may cause inconsistencies."; + } + } } else if (params[0].equals_cs("MODSUPPORT")) { @@ -718,7 +724,7 @@ class ProtoInspIRCd : public Module { this->SetAuthor("Anope"); - pmodule_ircd_var(myIrcd); + pmodule_ircd_var(&myIrcd); pmodule_ircd_proto(&this->ircd_proto); pmodule_ircd_message(&this->ircd_message); |
