Project

General

Profile

coresocks.diff

admin, 08/31/2008 12:35 AM

View differences:

home/sphilips/projects/quassel/src/core/networkconnection.cpp 2008-08-31 00:17:32.000000000 +0000
23 23
#include <QMetaMethod>
24 24
#include <QDateTime>
25 25

  
26
#ifndef QT_NO_NETWORKPROXY
27
#  include <QNetworkProxy>
28
#endif
29

  
26 30
#include "util.h"
27 31
#include "core.h"
28 32
#include "coresession.h"
......
89 93
  connect(network, SIGNAL(autoReconnectIntervalSet(quint32)), this, SLOT(autoReconnectSettingsChanged()));
90 94
  connect(network, SIGNAL(autoReconnectRetriesSet(quint16)), this, SLOT(autoReconnectSettingsChanged()));
91 95

  
96

  
97
#ifndef QT_NO_NETWORKPROXY
98
  char *env_socks = getenv("SOCKS_SERVER");
99

  
100
  if (env_socks != NULL) {
101
    QString socks = QString(env_socks);
102

  
103
    if (! socks.isEmpty()) {
104
      QStringList split = socks.split(QChar(':'));
105
      QString socks_host = (split[0].isEmpty()) ? QString("localhost") : split[0];
106
      unsigned int socks_port = (split.count() > 1 && split[1].toInt() > 0) ? split[1].toInt() : 1080;
107
    
108
      qDebug() << "Using SOCKS (" << socks_host << ":" << socks_port << ")";
109

  
110
      QNetworkProxy proxy(QNetworkProxy::Socks5Proxy, socks_host, socks_port);
111
      (&socket)->setProxy(proxy);
112
    }
113
  }
114
#endif
115

  
92 116
#ifndef QT_NO_OPENSSL
93 117
  connect(&socket, SIGNAL(encrypted()), this, SLOT(socketEncrypted()));
94 118
  connect(&socket, SIGNAL(sslErrors(const QList<QSslError> &)), this, SLOT(sslErrors(const QList<QSslError> &)));