diff options
author | Sadie Powell <sadie@witchery.services> | 2024-02-22 15:58:23 +0000 |
---|---|---|
committer | Sadie Powell <sadie@witchery.services> | 2024-02-22 17:05:30 +0000 |
commit | c4e9c0bf8548da1bf4fe2cfe5e7f5ab101b35e52 (patch) | |
tree | edcb3b44b2c600aa40ebfb743fe7edfad4f06149 /modules/botserv/bs_bot.cpp | |
parent | 84ad85ee857e9a088bf2d5e3e5b1056d1bf52bf8 (diff) |
If the IRCd sends a field limit then use it over that of the config.
Diffstat (limited to 'modules/botserv/bs_bot.cpp')
-rw-r--r-- | modules/botserv/bs_bot.cpp | 29 |
1 files changed, 13 insertions, 16 deletions
diff --git a/modules/botserv/bs_bot.cpp b/modules/botserv/bs_bot.cpp index 170e1073a..5571a82c9 100644 --- a/modules/botserv/bs_bot.cpp +++ b/modules/botserv/bs_bot.cpp @@ -28,23 +28,21 @@ private: return; } - Configuration::Block *networkinfo = Config->GetBlock("networkinfo"); - - if (nick.length() > networkinfo->Get<unsigned>("nicklen")) + if (nick.length() > IRCD->GetMaxNick()) { - source.Reply(_("Bot nicks may only be %d characters long."), networkinfo->Get<unsigned>("nicklen")); + source.Reply(_("Bot nicks may only be %zu characters long."), IRCD->GetMaxNick()); return; } - if (user.length() > networkinfo->Get<unsigned>("userlen")) + if (user.length() > IRCD->GetMaxUser()) { - source.Reply(_("Bot idents may only be %d characters long."), networkinfo->Get<unsigned>("userlen")); + source.Reply(_("Bot idents may only be %zu characters long."), IRCD->GetMaxUser()); return; } - if (host.length() > networkinfo->Get<unsigned>("hostlen")) + if (host.length() > IRCD->GetMaxHost()) { - source.Reply(_("Bot hosts may only be %d characters long."), networkinfo->Get<unsigned>("hostlen")); + source.Reply(_("Bot hosts may only be %zu characters long."), IRCD->GetMaxHost()); return; } @@ -120,23 +118,22 @@ private: return; } - Configuration::Block *networkinfo = Config->GetBlock("networkinfo"); - - if (nick.length() > networkinfo->Get<unsigned>("nicklen")) + if (nick.length() > IRCD->GetMaxNick()) { - source.Reply(_("Bot nicks may only be %d characters long."), networkinfo->Get<unsigned>("nicklen")); + source.Reply(_("Bot nicks may only be %zu characters long."), IRCD->GetMaxNick()); return; } - if (user.length() > networkinfo->Get<unsigned>("userlen")) + if (user.length() > IRCD->GetMaxUser()) { - source.Reply(_("Bot idents may only be %d characters long."), networkinfo->Get<unsigned>("userlen")); + source.Reply(_("Bot idents may only be %zu characters long."), IRCD->GetMaxUser()); return; } - if (host.length() > networkinfo->Get<unsigned>("hostlen")) + if (host.length() > IRCD->GetMaxHost()) { - source.Reply(_("Bot hosts may only be %d characters long."), networkinfo->Get<unsigned>("hostlen")); + source.Reply(_("Bot hosts may only be %zu characters long."), IRCD->GetMaxHost() + ); return; } |