1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-01 20:00:13 +02:00

Add application proxy factory back in, only have servent use noproxy

in favor of default proxy, as opposed to when a SOCKS proxy is set
This commit is contained in:
Jeff Mitchell
2011-11-18 15:24:51 -05:00
parent 708668ea0a
commit 362f8fc622
3 changed files with 27 additions and 20 deletions

View File

@@ -18,18 +18,18 @@
#include "servent.h" #include "servent.h"
#include <QCoreApplication> #include <QtCore/QCoreApplication>
#include <QMutexLocker> #include <QtCore/QMutexLocker>
#include <QNetworkInterface> #include <QtNetwork/QNetworkInterface>
#include <QFile> #include <QtCore/QFile>
#include <QThread> #include <QtCore/QThread>
#include <QNetworkProxy> #include <QtNetwork/QNetworkProxy>
#include <QNetworkRequest> #include <QtNetwork/QNetworkRequest>
#include <QNetworkReply> #include <QtNetwork/QNetworkReply>
#ifndef ENABLE_HEADLESS #ifndef ENABLE_HEADLESS
#include <QPushButton> #include <QtGui/QPushButton>
#include <QMessageBox> #include <QtGui/QMessageBox>
#endif #endif
#include "result.h" #include "result.h"
@@ -70,6 +70,8 @@ Servent::Servent( QObject* parent )
new ACLSystem( this ); new ACLSystem( this );
// Don't use system default proxy, so if SOCKS 5 specified, use that, otherwise set no proxy
if ( TomahawkSettings::instance()->proxyHost().isEmpty() )
setProxy( QNetworkProxy::NoProxy ); setProxy( QNetworkProxy::NoProxy );
{ {

View File

@@ -22,15 +22,15 @@
// time before new connection terminates if no auth received // time before new connection terminates if no auth received
#define AUTH_TIMEOUT 180000 #define AUTH_TIMEOUT 180000
#include <QObject> #include <QtCore/QObject>
#include <QTcpServer> #include <QtCore/QMap>
#include <QHostInfo> #include <QtCore/QMutex>
#include <QMap> #include <QtCore/QSharedPointer>
#include <QMutex> #include <QtCore/QTimer>
#include <QSharedPointer> #include <QtCore/QPointer>
#include <QTcpSocket> #include <QtNetwork/QTcpServer>
#include <QTimer> #include <QtNetwork/QTcpSocket>
#include <QPointer> #include <QtNetwork/QHostInfo>
#include <qjson/parser.h> #include <qjson/parser.h>
#include <qjson/serializer.h> #include <qjson/serializer.h>

View File

@@ -487,8 +487,10 @@ NetworkProxyFactory::NetworkProxyFactory( const NetworkProxyFactory& other )
QList< QNetworkProxy > QList< QNetworkProxy >
NetworkProxyFactory::proxyForQuery( const QNetworkProxyQuery& query ) NetworkProxyFactory::proxyForQuery( const QNetworkProxyQuery& query )
{ {
tDebug() << Q_FUNC_INFO;
TomahawkUtils::NetworkProxyFactory* proxyFactory = TomahawkUtils::proxyFactory(); TomahawkUtils::NetworkProxyFactory* proxyFactory = TomahawkUtils::proxyFactory();
QList< QNetworkProxy > proxies = proxyFactory->queryProxy( query ); QList< QNetworkProxy > proxies = proxyFactory->queryProxy( query );
tDebug() << Q_FUNC_INFO << " proxies size = " << proxies.size();
return proxies; return proxies;
} }
@@ -496,6 +498,7 @@ NetworkProxyFactory::proxyForQuery( const QNetworkProxyQuery& query )
QList< QNetworkProxy > QList< QNetworkProxy >
NetworkProxyFactory::queryProxy( const QNetworkProxyQuery& query ) NetworkProxyFactory::queryProxy( const QNetworkProxyQuery& query )
{ {
tDebug() << Q_FUNC_INFO << "query.peerHostName() = " << query.peerHostName() << ", m_noProxyHosts = " << m_noProxyHosts;
QList< QNetworkProxy > proxies; QList< QNetworkProxy > proxies;
QString hostname = query.peerHostName(); QString hostname = query.peerHostName();
if ( hostname.isEmpty() || m_noProxyHosts.contains( hostname ) ) if ( hostname.isEmpty() || m_noProxyHosts.contains( hostname ) )
@@ -503,6 +506,7 @@ NetworkProxyFactory::queryProxy( const QNetworkProxyQuery& query )
else else
proxies << m_proxy << QNetworkProxy( QNetworkProxy::NoProxy ) << QNetworkProxy( QNetworkProxy::DefaultProxy ); proxies << m_proxy << QNetworkProxy( QNetworkProxy::NoProxy ) << QNetworkProxy( QNetworkProxy::DefaultProxy );
tDebug() << Q_FUNC_INFO << " proxies size = " << proxies.size();
return proxies; return proxies;
} }
@@ -608,6 +612,7 @@ setProxyFactory( NetworkProxyFactory* factory, bool noMutexLocker )
*currFactory = *factory; *currFactory = *factory;
} }
} }
QNetworkProxyFactory::setApplicationProxyFactory( factory );
} }
*s_threadProxyFactoryHash[ QThread::currentThread() ] = *factory; *s_threadProxyFactoryHash[ QThread::currentThread() ] = *factory;