[9466] Implemented SOAP in MaNGOS

- removed deprecated code from RASocket
- allow more than one login at a time on the RA console
- added gsoap library for handling SOAP requests
- removed deprecated mangos_string entry

Thanks to:
- Derex for reporting a bug which occured if more than 1024
    players were connected  [poll() vs select()]
- caeruleaus for adding windowsbuild support
- vladimir for suggesting a different thread starting order
- fdb_ for suggesting SOAP in the first place
This commit is contained in:
arrai 2010-02-26 20:15:46 +01:00
parent 844f032458
commit e520d8409e
33 changed files with 20337 additions and 96 deletions

View file

@ -35,7 +35,7 @@
#include "Player.h"
#include "Chat.h"
void utf8print(const char* str)
void utf8print(void* arg, const char* str)
{
#if PLATFORM == PLATFORM_WINDOWS
wchar_t wtemp_buf[6000];
@ -51,6 +51,12 @@ void utf8print(const char* str)
#endif
}
void commandFinished(void*, bool sucess)
{
printf("mangos>");
fflush(stdout);
}
/// Delete a user account and all associated characters in this realm
/// \todo This function has to be enhanced to respect the login/realm split (delete char, delete account chars in realm, delete account chars in realm then delete account
bool ChatHandler::HandleAccountDeleteCommand(const char* args)
@ -342,7 +348,7 @@ void CliRunnable::run()
continue;
}
sWorld.QueueCliCommand(&utf8print,command.c_str());
sWorld.QueueCliCommand(new CliCommandHolder(NULL, command.c_str(), &utf8print, &commandFinished));
}
else if (feof(stdin))
{