diff options
author | Christopher Baines <cb15g11@soton.ac.uk> | 2014-03-16 23:10:24 +0000 |
---|---|---|
committer | Christopher Baines <cb15g11@soton.ac.uk> | 2014-03-16 23:10:24 +0000 |
commit | 64b892d507e133b72bc6681baf0dd69cdbc0ab17 (patch) | |
tree | 0b400afe2e319eb75875f9833201ef6429423158 /lib | |
parent | 347df2b3d9168bf07b4c937c2c6b54175a268f3b (diff) | |
download | chutney-64b892d507e133b72bc6681baf0dd69cdbc0ab17.tar chutney-64b892d507e133b72bc6681baf0dd69cdbc0ab17.tar.gz |
Some stuff
Diffstat (limited to 'lib')
-rw-r--r-- | lib/chutney/TorNet.py | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/lib/chutney/TorNet.py b/lib/chutney/TorNet.py index 5697fdd..4ddda49 100644 --- a/lib/chutney/TorNet.py +++ b/lib/chutney/TorNet.py @@ -1,4 +1,3 @@ -#!/usr/bin/python # # Copyright 2011 Nick Mathewson, Michael Stone # Copyright 2013 The Tor Project @@ -21,6 +20,7 @@ import re import errno import time import thread +import random import stem.control @@ -33,6 +33,8 @@ import urllib import socks import pycurl +import Queue + import chutney.Templating import chutney.Traffic @@ -117,13 +119,13 @@ class Node(object): self._env['nodenum'] = num def query(self, url): - print("querying %i at port %i" % (self._env['nodenum'], self._env['socksport'])) + #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)) + #print("getaddrinfo " + str(args)) return [(socket.AF_INET, socket.SOCK_STREAM, 6, '', (args[0], args[1]))] socket.getaddrinfo = getaddrinfo @@ -449,8 +451,6 @@ class LocalNodeController(NodeController): if pid is None: return False - print("checking if " + str(pid) + " is running") - try: os.kill(pid, 0) # "kill 0" == "are you there?" except OSError, e: @@ -688,12 +688,9 @@ class Network(object): def stop(self): - print("Closing all stem controllers") for n in self._nodes: if n._stemcontroller: - print("Closed stem controller") n._stemcontroller.close() - print("Closed all stem controllers") controllers = [ n.getController() for n in self._nodes ] for sig, desc in [(signal.SIGINT, "SIGINT"), @@ -705,12 +702,9 @@ class Network(object): c.stop(sig=sig) print "Waiting for nodes to finish." for n in xrange(10): - print("loop " + str(n)) time.sleep(1) - print("after sleep") if all(not c.isRunning() for c in controllers): return - print("printing dot") sys.stdout.write(".") sys.stdout.flush() for c in controllers: @@ -747,6 +741,11 @@ def usage(network): " ".join(x for x in dir(network) if not x.startswith("_")))]) def runConfigFile(verb, f): + def stop(exitcode=0): + _THE_NETWORK.stop() + print("Network stoped, exiting") + sys.exit(exitcode) + _GLOBALS = dict(_BASE_ENVIRON = _BASE_ENVIRON, Node=Node, EventType=stem.control.EventType, @@ -755,6 +754,10 @@ def runConfigFile(verb, f): reactor=reactor, time=time, thread=thread, + Queue=Queue, + random=random, + log=log, + stop=stop, _THE_NETWORK=_THE_NETWORK) exec f in _GLOBALS @@ -774,6 +777,9 @@ def runConfigFile(verb, f): return getattr(network, verb)() +def log(string): + print(time.strftime("%b %d %H:%M:%S.000") + " " + str(string)) + def signal_handler(signal, frame): _THE_NETWORK.stop() print("Network stoped, exiting") @@ -792,7 +798,7 @@ def main(): f = open(sys.argv[2]) result = runConfigFile(sys.argv[1], f) - print("run config file returns " + str(result)) + #print("run config file returns " + str(result)) if result is False: sys.exit(-1) |