From e1c83be32d5435d3c2bbc1468b24ba8c0728bac3 Mon Sep 17 00:00:00 2001 From: "madmaxoft@gmail.com" Date: Sun, 2 Sep 2012 15:38:28 +0000 Subject: ProtoProxy: Initial import of the protocol proxy project. Currently it logs all communication, doesn't decode anything, doesn't decrypt. git-svn-id: http://mc-server.googlecode.com/svn/trunk@822 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- ProtoProxy/Connection.h | 59 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 ProtoProxy/Connection.h (limited to 'ProtoProxy/Connection.h') diff --git a/ProtoProxy/Connection.h b/ProtoProxy/Connection.h new file mode 100644 index 000000000..decf42435 --- /dev/null +++ b/ProtoProxy/Connection.h @@ -0,0 +1,59 @@ + +// Connection.h + +// Interfaces to the cConnection class representing a single pair of connected sockets + + + + + +#pragma once + +#include + + + + + +class cServer; + + + + + +class cConnection +{ + cCriticalSection m_CSLog; + FILE * m_LogFile; + + cServer & m_Server; + SOCKET m_ClientSocket; + SOCKET m_ServerSocket; + + clock_t m_BeginTick; // Tick when the relative time was first retrieved (used for GetRelativeTime()) + +public: + cConnection(SOCKET a_ClientSocket, cServer & a_Server); + ~cConnection(); + + void Run(void); + + void Log(const char * a_Format, ...); + void DataLog(const void * a_Data, int a_Size, const char * a_Format, ...); + +protected: + bool ConnectToServer(void); + + /// Relays data from server to client; returns false if connection aborted + bool RelayFromServer(void); + + /// Relays data from client to server; returns false if connection aborted + bool RelayFromClient(void); + + /// Returns the time relative to the first call of this function, in the fractional seconds elapsed + double GetRelativeTime(void); +} ; + + + + -- cgit v1.2.3