[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[vidalia-svn] r2146: Do a tiny bit of shuffling that will make the GeoIP-over-SSL (in trunk: . src/geoip)



Author: edmanm
Date: 2007-11-30 21:47:42 -0500 (Fri, 30 Nov 2007)
New Revision: 2146

Modified:
   trunk/
   trunk/src/geoip/geoipresolver.cpp
   trunk/src/geoip/geoipresolver.h
Log:
 r2173@lysithea:  edmanm | 2007-11-30 21:47:36 -0500
 Do a tiny bit of shuffling that will make the GeoIP-over-SSL stuff
 a bit easier to (conditionally) squeeze in.



Property changes on: trunk
___________________________________________________________________
 svk:merge ticket from /local/vidalia/trunk [r2173] on 0108964c-5b0b-4c9e-969f-e2288315d100

Modified: trunk/src/geoip/geoipresolver.cpp
===================================================================
--- trunk/src/geoip/geoipresolver.cpp	2007-12-01 02:24:17 UTC (rev 2145)
+++ trunk/src/geoip/geoipresolver.cpp	2007-12-01 02:47:42 UTC (rev 2146)
@@ -25,6 +25,7 @@
  * \brief Requests GeoIP information and caches the result
  */
 
+#include <torsocket.h>
 #include "geoipresolver.h"
 
 /** Host for the geo ip information. This hostname round-robins between
@@ -91,7 +92,7 @@
 GeoIpResolver::connected()
 {
   /* Find the socket and request for whoever called this slot */ 
-  TorSocket *socket = (TorSocket *)sender();
+  QAbstractSocket *socket = dynamic_cast<QAbstractSocket *>(sender());
   if (!_requestList.contains(socket)) {
     return;
   }
@@ -106,7 +107,7 @@
 GeoIpResolver::disconnected()
 {
   /* Find the socket and request for whoever called this slot */ 
-  TorSocket *socket = (TorSocket *)sender();
+  QAbstractSocket *socket = dynamic_cast<QAbstractSocket *>(sender());
   if (!_requestList.contains(socket)) {
     return;
   }
@@ -162,7 +163,7 @@
 GeoIpResolver::socketError(QString errorString)
 {
   /* Find the socket and request for whoever called this slot */ 
-  TorSocket *socket = (TorSocket *)sender();
+  QAbstractSocket *socket = dynamic_cast<QAbstractSocket *>(sender());
   if (!_requestList.contains(socket)) {
     return;
   }
@@ -191,21 +192,6 @@
   return request;
 }
 
-/** Creates a TorSocket used to connect to the Geo IP host. */
-TorSocket*
-GeoIpResolver::createRequestSocket()
-{
-  TorSocket *socket = new TorSocket(_socksAddr, _socksPort);
-  connect(socket, SIGNAL(connectedToHost()), this, SLOT(connected()),
-          Qt::QueuedConnection);
-  connect(socket, SIGNAL(socketError(QString)), 
-            this,   SLOT(socketError(QString)),
-          Qt::QueuedConnection);
-  connect(socket, SIGNAL(disconnected()), this, SLOT(disconnected()),
-          Qt::QueuedConnection);
-  return socket;
-}
-
 /** Resolves a list of IPs to a geographic location. */
 int
 GeoIpResolver::resolve(QList<QHostAddress> ips)
@@ -218,7 +204,14 @@
   }
 
   /* Create a socket used ot request the geo ip information. */
-  TorSocket *socket = createRequestSocket();
+  TorSocket *socket = new TorSocket(_socksAddr, _socksPort);
+  connect(socket, SIGNAL(connectedToHost()), this, SLOT(connected()),
+          Qt::QueuedConnection);
+  connect(socket, SIGNAL(socketError(QString)), 
+            this,   SLOT(socketError(QString)),
+          Qt::QueuedConnection);
+  connect(socket, SIGNAL(disconnected()), this, SLOT(disconnected()),
+          Qt::QueuedConnection);
   GeoIpRequest *request = createRequest(ips);
   _requestList.insert(socket, request);
   

Modified: trunk/src/geoip/geoipresolver.h
===================================================================
--- trunk/src/geoip/geoipresolver.h	2007-12-01 02:24:17 UTC (rev 2145)
+++ trunk/src/geoip/geoipresolver.h	2007-12-01 02:47:42 UTC (rev 2146)
@@ -33,7 +33,6 @@
 #include <QHash>
 #include <QString>
 #include <QHostAddress>
-#include <util/torsocket.h>
 
 #include "geoip.h"
 #include "geoipcache.h"
@@ -80,13 +79,11 @@
 private:
   /** Creates an HTTP request for Geo IP information. */
   GeoIpRequest* createRequest(QList<QHostAddress> ips);
-  /** Creates a socket used to request Geo IP information over Tor. */
-  TorSocket* createRequestSocket();
-  
+
   /**< Cached GeoIp objects. */
   GeoIpCache  _cache;
   /**< List of sockets used for requests. */
-  QHash<TorSocket *,GeoIpRequest*> _requestList;
+  QHash<QAbstractSocket *,GeoIpRequest*> _requestList;
   /** Tor's SocksListenAddress. */
   QHostAddress _socksAddr;
   /** Tor's SocksPort. */