diff options
| author | Petr Mrázek | 2012-03-15 22:05:33 +0100 |
|---|---|---|
| committer | Petr Mrázek | 2012-03-15 22:05:33 +0100 |
| commit | c72fb76316f436eb5987687f7c5b3f68f24cc817 (patch) | |
| tree | 3c1824459a6385c49bb55d5f665a658588081d91 /library/RemoteServer.cpp | |
| parent | 52aca6e05a8a1610b6c8c31ffbbc3d25b6f57db6 (diff) | |
| download | dfhack-c72fb76316f436eb5987687f7c5b3f68f24cc817.tar.gz dfhack-c72fb76316f436eb5987687f7c5b3f68f24cc817.tar.bz2 dfhack-c72fb76316f436eb5987687f7c5b3f68f24cc817.tar.xz | |
MSVC fixage for the new socket API
Diffstat (limited to 'library/RemoteServer.cpp')
| -rw-r--r-- | library/RemoteServer.cpp | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/library/RemoteServer.cpp b/library/RemoteServer.cpp index 9d3c1101..e7ab0cba 100644 --- a/library/RemoteServer.cpp +++ b/library/RemoteServer.cpp @@ -43,8 +43,10 @@ POSSIBILITY OF SUCH DAMAGE. #include <fstream> #include <istream> #include <string> +#include <stdint.h> #include "RemoteServer.h" +#include "PassiveSocket.h" #include "PluginManager.h" #include "MiscUtils.h" @@ -250,7 +252,7 @@ void ServerConnection::connection_ostream::flush_proxy() buffer.clear(); - if (!sendRemoteMessage(*owner->socket, RPC_REPLY_TEXT, &msg)) + if (!sendRemoteMessage(owner->socket, RPC_REPLY_TEXT, &msg)) { owner->in_error = true; Core::printerr("Error writing text into client socket.\n"); @@ -267,7 +269,7 @@ void ServerConnection::threadFn(void *arg) { RPCHandshakeHeader header; - if (!readFullBuffer(*me->socket, &header, sizeof(header))) + if (!readFullBuffer(me->socket, &header, sizeof(header))) { out << "In RPC server: could not read handshake header." << endl; delete me; @@ -301,7 +303,7 @@ void ServerConnection::threadFn(void *arg) // Read the message RPCMessageHeader header; - if (!readFullBuffer(*me->socket, &header, sizeof(header))) + if (!readFullBuffer(me->socket, &header, sizeof(header))) { out.printerr("In RPC server: I/O error in receive header.\n"); break; @@ -318,7 +320,7 @@ void ServerConnection::threadFn(void *arg) std::auto_ptr<uint8_t> buf(new uint8_t[header.size]); - if (!readFullBuffer(*me->socket, buf.get(), header.size)) + if (!readFullBuffer(me->socket, buf.get(), header.size)) { out.printerr("In RPC server: I/O error in receive %d bytes of data.\n", header.size); break; @@ -363,7 +365,7 @@ void ServerConnection::threadFn(void *arg) if (res == CR_OK && reply) { - if (!sendRemoteMessage(*me->socket, RPC_REPLY_RESULT, reply, &out_size)) + if (!sendRemoteMessage(me->socket, RPC_REPLY_RESULT, reply, &out_size)) { out.printerr("In RPC server: I/O error in send result.\n"); break; @@ -398,12 +400,14 @@ void ServerConnection::threadFn(void *arg) ServerMain::ServerMain() { + socket = new CPassiveSocket(); thread = NULL; } ServerMain::~ServerMain() { - socket.Close(); + socket->Close(); + delete socket; } bool ServerMain::listen(int port) @@ -411,9 +415,9 @@ bool ServerMain::listen(int port) if (thread) return true; - socket.Initialize(); + socket->Initialize(); - if (!socket.Listen((const uint8 *)"127.0.0.1", port)) + if (!socket->Listen((const uint8 *)"127.0.0.1", port)) return false; thread = new tthread::thread(threadFn, this); @@ -425,7 +429,7 @@ void ServerMain::threadFn(void *arg) ServerMain *me = (ServerMain*)arg; CActiveSocket *client; - while ((client = me->socket.Accept()) != NULL) + while ((client = me->socket->Accept()) != NULL) { new ServerConnection(client); } |
