summaryrefslogtreecommitdiff
path: root/vdr-vdrmanager/sock.h
diff options
context:
space:
mode:
Diffstat (limited to 'vdr-vdrmanager/sock.h')
-rw-r--r--vdr-vdrmanager/sock.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/vdr-vdrmanager/sock.h b/vdr-vdrmanager/sock.h
index 0234afc..25a7b83 100644
--- a/vdr-vdrmanager/sock.h
+++ b/vdr-vdrmanager/sock.h
@@ -5,6 +5,7 @@
#ifndef _VDRMON_SOCK
#define _VDRMON_SOCK
+#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <string>
@@ -17,6 +18,7 @@ protected:
int sock;
const char * password;
bool forceCheckSvdrp;
+ int compressionMode;
protected:
cVdrmanagerSocket();
bool IsPasswordSet();
@@ -33,11 +35,18 @@ class cVdrmanagerClientSocket : public cVdrmanagerSocket
private:
string readbuf;
string writebuf;
+ char * sendbuf;
+ size_t sendsize;
+ size_t sendoffset;
bool disconnected;
+ bool initDisconnect;
int client;
bool login;
+ bool compression;
+ bool initCompression;
+ int compressionMode;
public:
- cVdrmanagerClientSocket(const char * password);
+ cVdrmanagerClientSocket(const char * password, int compressionMode);
virtual ~cVdrmanagerClientSocket();
bool Attach(int fd);
bool IsLineComplete();
@@ -51,6 +60,8 @@ public:
bool WritePending();
bool IsLoggedIn();
void SetLoggedIn();
+ void ActivateCompression();
+ void Compress();
};
class cVdrmanagerServerSocket : public cVdrmanagerSocket
@@ -58,7 +69,7 @@ class cVdrmanagerServerSocket : public cVdrmanagerSocket
public:
cVdrmanagerServerSocket();
virtual ~cVdrmanagerServerSocket();
- bool Create(int port, const char * password, bool forceCheckSvdrp);
+ bool Create(int port, const char * password, bool forceCheckSvdrp, int compressionMode);
cVdrmanagerClientSocket * Accept();
};