[9518] Implement account associated execute for RA commands

* Now at login by RA-connection RA-connection use account id/access level
  for commands execute. So at login with moderator access by RA-connection you
  can execute only moderator level commands. For administrator level accounts
  allowed execute only console level commands if new config option RA.Stricted = 0.
  For security reasons by default RA.Stricted = 1.
* RA-connection executed commands now logged for associalted account id
* Some own account related commands allowed execute in RA-connection

NOTE: config version updated because RA.Stricted = 1 not compatible with old
      way work and this can break tools thta use RA-access if it not disabled.
      Yuo will need update mangosd.conf.
This commit is contained in:
VladimirMangos 2010-03-05 04:14:45 +03:00
parent 39559fc73a
commit 7fdbe497e9
13 changed files with 114 additions and 58 deletions

View file

@ -1819,7 +1819,7 @@ void World::UpdateSessions( uint32 diff )
}
}
// This handles the issued and queued CLI commands
// This handles the issued and queued CLI/RA commands
void World::ProcessCliCommands()
{
CliCommandHolder::Print* zprint = NULL;
@ -1830,7 +1830,7 @@ void World::ProcessCliCommands()
sLog.outDebug("CLI command under processing...");
zprint = command->m_print;
callbackArg = command->m_callbackArg;
CliHandler handler(callbackArg, zprint);
CliHandler handler(command->m_cliAccountId, command->m_cliAccessLevel, callbackArg, zprint);
handler.ParseCommands(command->m_command);
if(command->m_commandFinished)