diff -r ee044380947f -r f3f39075066d core/AdminCache.cpp --- a/core/AdminCache.cpp Tue Sep 25 21:45:25 2007 +0000 +++ b/core/AdminCache.cpp Wed Sep 26 01:03:20 2007 +0000 @@ -1707,3 +1707,25 @@ return pUser->immunity_level; } +bool AdminCache::CheckAccess(int client, const char *cmd, AdminFlag flags, bool override_only) +{ + if (client == 0) + { + return true; + } + + /* Auto-detect a command if we can */ + FlagBits bits = flags; + bool found_command = false; + if (!override_only) + { + found_command = g_ConCmds.LookForCommandAdminFlags(cmd, &bits); + } + + if (!found_command) + { + GetCommandOverride(cmd, Override_Command, &bits); + } + + return g_ConCmds.CheckCommandAccess(client, cmd, bits) ? 1 : 0; +}