diff options
| author | 2014-05-26 03:18:55 -0400 | |
|---|---|---|
| committer | 2017-12-03 14:56:37 +0000 | |
| commit | ecb7891090387accc01d01afc7e2d722fd02889a (patch) | |
| tree | de9689f0ea117833b13e804c231f4c6616b27c3e /src/modules | |
| parent | Move OnSync{Channel,Network,User} to ServerEventListener. (diff) | |
| download | inspircd++-ecb7891090387accc01d01afc7e2d722fd02889a.tar.gz inspircd++-ecb7891090387accc01d01afc7e2d722fd02889a.tar.bz2 inspircd++-ecb7891090387accc01d01afc7e2d722fd02889a.zip | |
Removed config option for +L redirect.
Closes #466.
Diffstat (limited to 'src/modules')
| -rw-r--r-- | src/modules/m_redirect.cpp | 28 |
1 files changed, 4 insertions, 24 deletions
diff --git a/src/modules/m_redirect.cpp b/src/modules/m_redirect.cpp index 479dd6d0f..b3dc6e94d 100644 --- a/src/modules/m_redirect.cpp +++ b/src/modules/m_redirect.cpp @@ -72,39 +72,20 @@ class Redirect : public ParamMode<Redirect, LocalStringExt> } }; -/** Handles usermode +L to stop forced redirection and print an error. -*/ -class AntiRedirect : public SimpleUserModeHandler -{ - public: - AntiRedirect(Module* Creator) : SimpleUserModeHandler(Creator, "antiredirect", 'L') - { - if (!ServerInstance->Config->ConfValue("redirect")->getBool("antiredirect")) - DisableAutoRegister(); - } -}; - class ModuleRedirect : public Module { Redirect re; - AntiRedirect re_u; + SimpleUserModeHandler antiredirectmode; ChanModeReference limitmode; - bool UseUsermode; public: ModuleRedirect() : re(this) - , re_u(this) + , antiredirectmode(this, "antiredirect", 'L') , limitmode(this, "limit") { } - void init() CXX11_OVERRIDE - { - /* Setting this here so it isn't changable by rehasing the config later. */ - UseUsermode = ServerInstance->Config->ConfValue("redirect")->getBool("antiredirect"); - } - ModResult OnUserPreJoin(LocalUser* user, Channel* chan, const std::string& cname, std::string& privs, const std::string& keygiven) CXX11_OVERRIDE { if (chan) @@ -122,9 +103,8 @@ class ModuleRedirect : public Module user->WriteNumeric(470, cname, '*', "You may not join this channel. A redirect is set, but you may not be redirected as it is a circular loop."); return MOD_RES_DENY; } - /* We check the bool value here to make sure we have it enabled, if we don't then - usermode +L might be assigned to something else. */ - if (UseUsermode && user->IsModeSet(re_u)) + + if (user->IsModeSet(antiredirectmode)) { user->WriteNumeric(470, cname, channel, "Force redirection stopped."); return MOD_RES_DENY; |
