diff options
Diffstat (limited to 'src/modules')
-rw-r--r-- | src/modules/m_kicknorejoin.cpp | 10 | ||||
-rw-r--r-- | src/modules/m_spanningtree/capab.cpp | 5 |
2 files changed, 13 insertions, 2 deletions
diff --git a/src/modules/m_kicknorejoin.cpp b/src/modules/m_kicknorejoin.cpp index ebe2d45c9..b8a776667 100644 --- a/src/modules/m_kicknorejoin.cpp +++ b/src/modules/m_kicknorejoin.cpp @@ -83,10 +83,11 @@ class KickRejoinData */ class KickRejoin : public ParamMode<KickRejoin, SimpleExtItem<KickRejoinData> > { - static const unsigned int max = 60; + const unsigned int max; public: KickRejoin(Module* Creator) : ParamMode<KickRejoin, SimpleExtItem<KickRejoinData> >(Creator, "kicknorejoin", 'J') + , max(60) { } @@ -107,6 +108,11 @@ class KickRejoin : public ParamMode<KickRejoin, SimpleExtItem<KickRejoinData> > { out.append(ConvToStr(krd->delay)); } + + std::string GetModuleSettings() const + { + return ConvToStr(max); + } }; class ModuleKickNoRejoin : public Module @@ -147,7 +153,7 @@ public: Version GetVersion() CXX11_OVERRIDE { - return Version("Channel mode to delay rejoin after kick", VF_VENDOR); + return Version("Channel mode to delay rejoin after kick", VF_VENDOR | VF_COMMON, kr.GetModuleSettings()); } }; diff --git a/src/modules/m_spanningtree/capab.cpp b/src/modules/m_spanningtree/capab.cpp index 047808c29..9035d89c9 100644 --- a/src/modules/m_spanningtree/capab.cpp +++ b/src/modules/m_spanningtree/capab.cpp @@ -33,6 +33,11 @@ std::string TreeSocket::MyModules(int filter) std::string capabilities; for (ModuleManager::ModuleMap::const_iterator i = modlist.begin(); i != modlist.end(); ++i) { + // 2.2 advertises its settings for the benefit of services + // 2.0 would bork on this + if (proto_version < 1205 && i->second->ModuleSourceFile == "m_kicknorejoin.so") + continue; + Version v = i->second->GetVersion(); if (!(v.Flags & filter)) continue; |