diff options
| author | 2021-06-18 15:02:34 +0100 | |
|---|---|---|
| committer | 2021-06-18 15:02:34 +0100 | |
| commit | b2fde769b6daa6fe062525210d65ae5f1536f4bf (patch) | |
| tree | e9039e6a3b9a8f3241b71108f4bf2193f4c61b11 /src/modules/m_joinflood.cpp | |
| parent | Import a greatly refactored version of the opmoderated module. (diff) | |
| parent | Fix some inverted ignoreuntil values in the connectban module. (diff) | |
Merge branch 'insp3' into master.
Diffstat (limited to 'src/modules/m_joinflood.cpp')
| -rw-r--r-- | src/modules/m_joinflood.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/modules/m_joinflood.cpp b/src/modules/m_joinflood.cpp index 5dfeb845f..c8836d12f 100644 --- a/src/modules/m_joinflood.cpp +++ b/src/modules/m_joinflood.cpp @@ -152,20 +152,21 @@ class ModuleJoinFlood { } - void ReadConfig(ConfigStatus&) override + void ReadConfig(ConfigStatus& status) override { auto tag = ServerInstance->Config->ConfValue("joinflood"); duration = static_cast<unsigned int>(tag->getDuration("duration", 60, 10, 600)); bootwait = tag->getDuration("bootwait", 30); splitwait = tag->getDuration("splitwait", 30); - ignoreuntil = ServerInstance->startup_time + bootwait; + if (status.initial) + ignoreuntil = ServerInstance->startup_time + bootwait; } void OnServerSplit(const Server* server, bool error) override { if (splitwait) - ignoreuntil = ServerInstance->Time() + splitwait; + ignoreuntil = std::max<time_t>(ignoreuntil, ServerInstance->Time() + splitwait); } ModResult OnUserPreJoin(LocalUser* user, Channel* chan, const std::string& cname, std::string& privs, const std::string& keygiven, bool override) override |
