diff options
Diffstat (limited to 'Tools/ProtoProxy/ProtoProxy.cpp')
-rw-r--r-- | Tools/ProtoProxy/ProtoProxy.cpp | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/Tools/ProtoProxy/ProtoProxy.cpp b/Tools/ProtoProxy/ProtoProxy.cpp index 06a486778..ac5858d02 100644 --- a/Tools/ProtoProxy/ProtoProxy.cpp +++ b/Tools/ProtoProxy/ProtoProxy.cpp @@ -27,14 +27,29 @@ int main(int argc, char ** argv) cLogger::InitiateMultithreading(); - int ListenPort = (argc > 1) ? atoi(argv[1]) : 25564; - int ConnectPort = (argc > 2) ? atoi(argv[2]) : 25565; - printf("Initializing ProtoProxy. Listen port %d, connect port %d.\n", ListenPort, ConnectPort); + UInt16 ListenPort = 25564; + UInt16 ConnectPort = 25565; + if (argc > 1) + { + if (!StringToInteger(argv[1], ListenPort)) + { + LOGERROR("Invalid argument 1, expected port number, got \"%s\". Aborting.", argv[1]); + return 1; + } + if (argc > 2) + { + if (!StringToInteger(argv[2], ConnectPort)) + { + LOGERROR("Invalid argument 2, expected port number, got \"%s\". Aborting.", argv[2]); + return 2; + } + } + } cServer Server; int res = Server.Init(ListenPort, ConnectPort); if (res != 0) { - printf("Server initialization failed: %d", res); + LOGERROR("Server initialization failed: %d", res); return res; } |