X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_check.cpp;h=ddac033c1088ce65916aef450f3ce56238088509;hb=f0debf907a36846e3b48767e9797880135a4583b;hp=ef9507aa1ef82a1e26364bfa71cd2daa9e6c9384;hpb=e33e8bcdf8fd3e40eba6a41b43dbc48f973efb11;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_check.cpp b/src/modules/m_check.cpp index ef9507aa1..ddac033c1 100644 --- a/src/modules/m_check.cpp +++ b/src/modules/m_check.cpp @@ -184,10 +184,10 @@ class CommandCheck : public Command for(char c='A'; c <= 'z'; c++) { ModeHandler* mh = ServerInstance->Modes->FindMode(c, MODETYPE_USER); - if (mh && mh->NeedsOper() && loctarg->HasModePermission(c, MODETYPE_USER)) + if (mh && mh->NeedsOper() && loctarg->HasModePermission(mh)) umodes.push_back(c); mh = ServerInstance->Modes->FindMode(c, MODETYPE_CHANNEL); - if (mh && mh->NeedsOper() && loctarg->HasModePermission(c, MODETYPE_CHANNEL)) + if (mh && mh->NeedsOper() && loctarg->HasModePermission(mh)) cmodes.push_back(c); } context.Write("modeperms", "user=" + umodes + " channel=" + cmodes); @@ -301,7 +301,7 @@ class CommandCheck : public Command RouteDescriptor GetRouting(User* user, const std::vector& parameters) { - if (parameters.size() > 1) + if ((parameters.size() > 1) && (parameters[1].find('.') != std::string::npos)) return ROUTE_OPT_UCAST(parameters[1]); return ROUTE_LOCALONLY; }