mirror of
https://github.com/qTox/qTox.git
synced 2024-03-22 14:00:36 +08:00
Add proxy support to toxme and autouptdate
This commit is contained in:
parent
1757dfb2fc
commit
f14bc8316c
|
@ -108,6 +108,7 @@ AutoUpdater::VersionInfo AutoUpdater::getUpdateVersion()
|
|||
|
||||
QNetworkAccessManager *manager = new QNetworkAccessManager;
|
||||
QNetworkReply* reply = manager->get(QNetworkRequest(QUrl(checkURI)));
|
||||
manager->setProxy(Settings::getInstance().getProxy());
|
||||
while (!reply->isFinished())
|
||||
{
|
||||
if (abortFlag)
|
||||
|
@ -222,6 +223,7 @@ QByteArray AutoUpdater::getUpdateFlist()
|
|||
|
||||
QNetworkAccessManager *manager = new QNetworkAccessManager;
|
||||
QNetworkReply* reply = manager->get(QNetworkRequest(QUrl(flistURI)));
|
||||
manager->setProxy(Settings::getInstance().getProxy());
|
||||
while (!reply->isFinished())
|
||||
{
|
||||
if (abortFlag)
|
||||
|
@ -277,6 +279,7 @@ AutoUpdater::UpdateFile AutoUpdater::getUpdateFile(UpdateFileMeta fileMeta,
|
|||
file.metadata = fileMeta;
|
||||
|
||||
QNetworkAccessManager *manager = new QNetworkAccessManager;
|
||||
manager->setProxy(Settings::getInstance().getProxy());
|
||||
QNetworkReply* reply = manager->get(QNetworkRequest(QUrl(filesURI+fileMeta.id)));
|
||||
QObject::connect(reply, &QNetworkReply::downloadProgress, progressCallback);
|
||||
while (!reply->isFinished())
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
|
||||
#include "toxme.h"
|
||||
#include "src/core/core.h"
|
||||
#include <src/persistence/settings.h>
|
||||
#include <QtDebug>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
|
@ -34,6 +35,7 @@ QByteArray Toxme::makeJsonRequest(QString url, QString json, QNetworkReply::Netw
|
|||
return QByteArray();
|
||||
|
||||
QNetworkAccessManager netman;
|
||||
netman.setProxy(Settings::getInstance().getProxy());
|
||||
QNetworkRequest request{url};
|
||||
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");
|
||||
QNetworkReply* reply = netman.post(request,json.toUtf8());
|
||||
|
@ -57,6 +59,7 @@ QByteArray Toxme::getServerPubkey(QString url, QNetworkReply::NetworkError &erro
|
|||
|
||||
// Get key
|
||||
QNetworkAccessManager netman;
|
||||
netman.setProxy(Settings::getInstance().getProxy());
|
||||
QNetworkRequest request{url};
|
||||
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");
|
||||
QNetworkReply* reply = netman.get(request);
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
#include <QCryptographicHash>
|
||||
#include <QMutexLocker>
|
||||
#include <QThread>
|
||||
#include <QNetworkProxy>
|
||||
|
||||
#define SHOW_SYSTEM_TRAY_DEFAULT (bool) true
|
||||
|
||||
|
@ -770,6 +771,29 @@ void Settings::setForceTCP(bool newValue)
|
|||
forceTCP = newValue;
|
||||
}
|
||||
|
||||
QNetworkProxy Settings::getProxy() const
|
||||
{
|
||||
QNetworkProxy proxy;
|
||||
switch(Settings::getProxyType())
|
||||
{
|
||||
case ProxyType::ptNone:
|
||||
proxy.setType(QNetworkProxy::NoProxy);
|
||||
break;
|
||||
case ProxyType::ptSOCKS5:
|
||||
proxy.setType(QNetworkProxy::Socks5Proxy);
|
||||
break;
|
||||
case ProxyType::ptHTTP:
|
||||
proxy.setType(QNetworkProxy::HttpProxy);
|
||||
break;
|
||||
default:
|
||||
proxy.setType(QNetworkProxy::NoProxy);
|
||||
qWarning() << "Invalid Proxy type, setting to NoProxy";
|
||||
}
|
||||
proxy.setHostName(Settings::getProxyAddr());
|
||||
proxy.setPort(Settings::getProxyPort());
|
||||
return proxy;
|
||||
}
|
||||
|
||||
ProxyType Settings::getProxyType() const
|
||||
{
|
||||
QMutexLocker locker{&bigLock};
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
#include <QPixmap>
|
||||
#include <QMutex>
|
||||
#include <QDate>
|
||||
#include <QNetworkProxy>
|
||||
#include "src/core/corestructs.h"
|
||||
|
||||
class ToxId;
|
||||
|
@ -109,6 +110,8 @@ public:
|
|||
bool getForceTCP() const;
|
||||
void setForceTCP(bool newValue);
|
||||
|
||||
QNetworkProxy getProxy() const;
|
||||
|
||||
QString getProxyAddr() const;
|
||||
void setProxyAddr(const QString& newValue);
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user