From ce9b5b34c98922edcda748ac02850609a058d923 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 3 Mar 2014 15:56:46 +0000 Subject: Testing now works --- lib/chutney/TorNet.py | 28 ++++++++++++++++++++++++++-- networks/hidden-service | 20 +++++++++++++------- 2 files changed, 39 insertions(+), 9 deletions(-) diff --git a/lib/chutney/TorNet.py b/lib/chutney/TorNet.py index f1ebc08..5697fdd 100644 --- a/lib/chutney/TorNet.py +++ b/lib/chutney/TorNet.py @@ -20,13 +20,18 @@ import sys import re import errno import time +import thread import stem.control from twisted.web import server, resource from twisted.internet import reactor -from treq import get +import StringIO +import socket +import urllib +import socks +import pycurl import chutney.Templating import chutney.Traffic @@ -111,6 +116,25 @@ class Node(object): """ self._env['nodenum'] = num + def query(self, url): + print("querying %i at port %i" % (self._env['nodenum'], self._env['socksport'])) + + socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, '127.0.0.1', self._env['socksport']) + socket.socket = socks.socksocket + + def getaddrinfo(*args): + print("getaddrinfo " + str(args)) + return [(socket.AF_INET, socket.SOCK_STREAM, 6, '', (args[0], args[1]))] + + socket.getaddrinfo = getaddrinfo + + try: + return urllib.urlopen(url).read() + except: + e = sys.exc_info()[0] + print(e) + return "Unable to reach %s" % url + ##### # These are internal: @@ -729,8 +753,8 @@ def runConfigFile(verb, f): server=server, resource=resource, reactor=reactor, - get=get, time=time, + thread=thread, _THE_NETWORK=_THE_NETWORK) exec f in _GLOBALS diff --git a/networks/hidden-service b/networks/hidden-service index d45954c..e25a224 100644 --- a/networks/hidden-service +++ b/networks/hidden-service @@ -61,17 +61,23 @@ def start_test(): reactor.stop() print("stopped the reactor") - responses = {"1": 0, "2": 0} + def test(): + print("connecting to clients") + responses = {"1": 0, "2": 0} - def done(response): - print("code %s" % response.code) + for c in Client: + result = c.query("http://2oiifbe3wne4iaqb.onion/"); - if response.code == 200: - content = yield treq.content(resp) - responses[site]++ + responses[result] += 1 - get("http://127.0.0.1:8081/").addCallback(done) + print(result) + print(responses) + cleanup() + + thread.start_new_thread(test, ()) + + print("running reactor") reactor.run(installSignalHandlers=0) def start(): -- cgit v1.2.3