if (!MOD_RESULT.check(InspIRCd::TimingSafeCompare(ckey, keygiven)))
{
// If no key provided, or key is not the right one, and can't bypass +k (not invited or option not enabled)
if (!MOD_RESULT.check(InspIRCd::TimingSafeCompare(ckey, keygiven)))
{
// If no key provided, or key is not the right one, and can't bypass +k (not invited or option not enabled)
FIRST_MOD_RESULT(OnCheckInvite, MOD_RESULT, (user, chan));
if (MOD_RESULT != MOD_RES_ALLOW)
{
FIRST_MOD_RESULT(OnCheckInvite, MOD_RESULT, (user, chan));
if (MOD_RESULT != MOD_RES_ALLOW)
{
FIRST_MOD_RESULT(OnCheckLimit, MOD_RESULT, (user, chan));
if (!MOD_RESULT.check(chan->GetUserCounter() < static_cast<size_t>(limitmode.ext.get(chan))))
{
FIRST_MOD_RESULT(OnCheckLimit, MOD_RESULT, (user, chan));
if (!MOD_RESULT.check(chan->GetUserCounter() < static_cast<size_t>(limitmode.ext.get(chan))))
{