diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-03-03 15:24:13 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-03-03 15:24:13 +0000 |
| commit | eb82be34f09a83fb385f0bfef54eddcd254838aa (patch) | |
| tree | 63462f21557360495a56e34328a42654b7ba0f70 /source/QXmppTransferManager.h | |
| parent | 03b9d777e30bd869e7d53ca5a426f1e153616121 (diff) | |
| download | qxmpp-eb82be34f09a83fb385f0bfef54eddcd254838aa.tar.gz | |
add support for SOCKS5 proxies
Diffstat (limited to 'source/QXmppTransferManager.h')
| -rw-r--r-- | source/QXmppTransferManager.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source/QXmppTransferManager.h b/source/QXmppTransferManager.h index e5306031..442c0c3b 100644 --- a/source/QXmppTransferManager.h +++ b/source/QXmppTransferManager.h @@ -29,6 +29,7 @@ #include <QHostAddress> #include "QXmppIq.h" +#include "QXmppByteStreamIq.h" class QXmppByteStreamIq; class QXmppClient; @@ -53,6 +54,7 @@ public: enum Error { NoError = 0, + AbortError, FileAccessError, FileCorruptError, ProtocolError, @@ -73,6 +75,7 @@ public: FinishedState = 2, }; + void abort(); void accept(QIODevice *output); QXmppTransferJob::Direction direction() const; @@ -133,6 +136,7 @@ private: // for socks5 bytestreams QXmppSocksClient *m_socksClient; QXmppSocksServer *m_socksServer; + QXmppByteStreamIq::StreamHost m_socksProxy; friend class QXmppTransferManager; }; @@ -144,6 +148,8 @@ class QXmppTransferManager : public QObject public: QXmppTransferManager(QXmppClient* client); QXmppTransferJob *sendFile(const QString &jid, const QString &fileName); + QString proxy() const; + void setProxy(const QString &proxy); int supportedMethods() const; void setSupportedMethods(int methods); @@ -158,6 +164,8 @@ private slots: void iqReceived(const QXmppIq&); void socksClientDataReceived(); void socksClientDisconnected(); + void socksProxyDataSent(); + void socksProxyDisconnected(); void socksServerDataSent(); void socksServerDisconnected(); void streamInitiationIqReceived(const QXmppStreamInitiationIq&); @@ -174,12 +182,14 @@ private: void streamInitiationResultReceived(const QXmppStreamInitiationIq&); void streamInitiationSetReceived(const QXmppStreamInitiationIq&); void socksServerSendData(QXmppTransferJob *job); + void socksServerSendOffer(QXmppTransferJob *job); // reference to client object (no ownership) QXmppClient* m_client; QList<QXmppTransferJob*> m_jobs; int m_ibbBlockSize; int m_supportedMethods; + QString m_proxy; }; #endif |
