summaryrefslogtreecommitdiff
path: root/client/SslClient.cpp
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss@sss.chaoslab.ru>2011-11-27 20:34:04 +0200
committerGluzskiy Alexandr <sss@sss.chaoslab.ru>2011-11-27 20:34:04 +0200
commit0d96f9d417250b77a6f5366f3b14035c42782d90 (patch)
treed035590083cbf27f824f1a7c00c822ed812b4f6d /client/SslClient.cpp
parent8ce6d0ce269723658f8b84edaebf9d24afc3a251 (diff)
parenta19e9744751d4278f56cb3b6ff885c0068f03a3d (diff)
Merge branch 'master' of ssh://sss.chaoslab.ru//home/private_git/proxy_ui
Diffstat (limited to 'client/SslClient.cpp')
-rw-r--r--client/SslClient.cpp31
1 files changed, 30 insertions, 1 deletions
diff --git a/client/SslClient.cpp b/client/SslClient.cpp
index b3a2d15..b1841ed 100644
--- a/client/SslClient.cpp
+++ b/client/SslClient.cpp
@@ -1,4 +1,5 @@
+#include <string.h>
#include <QtCore>
#include <QtNetwork>
#include "SslClient.h"
@@ -72,7 +73,8 @@ void SslClient::SendRequest(RequestType type)
if (sslSocket.state() != QAbstractSocket::ConnectedState)
{
Logger::Trace("Connecting to server %s:%u\n", server.toLocal8Bit().data(), port);
- sslSocket.connectToHostEncrypted(server, port);
+ //sslSocket.connectToHostEncrypted(server, port);
+ sslSocket.connectToHostEncrypted("127.0.0.1", port);
}
else
{
@@ -100,6 +102,33 @@ void SslClient::SendRequest(RequestType type)
sslSocket.write(pkt);
}
+void SslClient::SendFileRequest(string filename)
+{
+ Logger::Trace("Sending request w code %x\n", RegularFile);
+ if (sslSocket.state() != QAbstractSocket::ConnectedState)
+ {
+ Logger::Trace("Connecting to server %s:%u\n", server.toLocal8Bit().data(), port);
+ sslSocket.connectToHostEncrypted(server, port);
+ }
+ else
+ {
+ Logger::Trace("Already connected to %s:%u\n", server.toLocal8Bit().data(), port);
+ }
+
+ unsigned char rcode = 0x12;
+ const char *file = filename.c_str();
+ size_t path_len = strlen(file);
+ char data[path_len + 5];
+ data[0] = data[1] = 0x13;
+ data[2] = rcode;
+ strncpy(data + 3, file, path_len);
+ data[path_len - 1] = data[path_len - 2] = 0x14;
+
+ QByteArray pkt(data);
+ sslSocket.write(pkt);
+}
+
+
/*
* Signal handlers
*/