summaryrefslogtreecommitdiff
path: root/syncClientSocket.cpp
diff options
context:
space:
mode:
authorOthmar Gsenger <otti@anytun.org>2007-12-13 12:56:50 +0000
committerOthmar Gsenger <otti@anytun.org>2007-12-13 12:56:50 +0000
commitcf7d42e10e3a2025df7857e180c07fcea404a05d (patch)
tree809e1c43e22d2fffc2210a3ae091a25a1342c5df /syncClientSocket.cpp
parentcodechanges in sha1authalgo (diff)
splitten SyncSocket to SyncSocket and SyncClientSocket
Diffstat (limited to 'syncClientSocket.cpp')
-rw-r--r--syncClientSocket.cpp73
1 files changed, 73 insertions, 0 deletions
diff --git a/syncClientSocket.cpp b/syncClientSocket.cpp
new file mode 100644
index 0000000..7dbbf67
--- /dev/null
+++ b/syncClientSocket.cpp
@@ -0,0 +1,73 @@
+#include <sstream>
+#include <iostream>
+#include <string>
+
+#include <boost/archive/text_oarchive.hpp>
+#include <boost/archive/text_iarchive.hpp>
+
+
+//#include "connectionParam.h"
+#include "Sockets/Utility.h"
+#include "syncClientSocket.h"
+#include "buffer.h"
+//#include "log.h"
+
+SyncClientSocket::SyncClientSocket(ISocketHandler& h,ConnectionList & cl)
+:TcpSocket(h),cl_(cl)
+{
+ // initial connection timeout setting and number of retries
+ SetConnectTimeout(12);
+ SetConnectionRetry(-1); //infinite reties
+
+ // Also reconnect broken link
+ SetReconnect(true);
+}
+
+
+bool SyncClientSocket::OnConnectRetry()
+{
+ std::cout << "SyncClientSocket::OnConnectRetry" << std::endl;
+ return true;
+}
+
+
+void SyncClientSocket::OnReconnect()
+{
+ std::cout << "SyncClientSocket::OnReconnect" << std::endl;
+ // ...
+ //Send("Welcome back\r\n");
+}
+
+
+void SyncClientSocket::OnRawData(const char *buf,size_t len)
+//void SyncClientSocket::OnLine(const std::string& line)
+{
+ return;
+ std::stringstream iss;
+ std::cout << "recieved sync inforamtaion:"<< std::endl;
+ for(size_t index=0;index<len;index++)
+ {
+ std::cout << buf[index];
+ iss << buf[index];
+ }
+ boost::archive::text_iarchive ia(iss);
+ SeqWindow * seq= new SeqWindow(0);
+ seq_nr_t seq_nr_=0;
+ KeyDerivation * kd = new KeyDerivation;
+ kd->init(::Buffer(20), ::Buffer(14));
+ ConnectionParam conn ( (*kd), (*seq), seq_nr_, "", 0);
+ ia >> conn;
+ std::cout << "sync connection remote host " << conn.remote_host_ << ":" << conn.remote_port_ << std::endl;
+ cl_.clear();
+ cl_.addConnection(conn,std::string("default"));
+}
+//void StatusClientSocket::InitSSLServer()
+//{
+// InitializeContext("server.pem", "keypwd", SSLv23_method());
+//}
+//
+//
+//void StatusClientSocket::Init()
+//{
+// EnableSSL();
+//}