blob: 5703f937c8434eebd2b494b18b49f759457ac0ce (
about) (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
nodes_by_fingerprint = {}
#{ nodenum: { circuit: "fingerprint", circuit: "fingerprint" } }
# Introduction Point Tracking
node_intro_circuits = {}
node_intro_events = {}
introduction_point_circuits = {}
def start_test():
log("Starting test")
port8081 = reactor.listenTCP(8081, server.Site(Site(1)))
port8082 = reactor.listenTCP(8082, server.Site(Site(2)))
def cleanup():
port8081.stopListening()
log("stopped 8081")
port8082.stopListening()
log("stopped 8082")
reactor.stop()
log("stopped the reactor")
def connection_test():
log("connecting to clients")
responses = {"1": 0, "2": 0}
for c in Client:
result = c.query("http://2oiifbe3wne4iaqb.onion/");
if result in responses:
responses[result] += 1
else:
log("Unknown response:")
log(responses)
def test():
connection_test()
connection_test()
cleanup()
stop()
thread.start_new_thread(test, ())
def start():
log("Starting round robin test")
if not all([ n.getController().start() for n in initial_nodes ]):
return False
log("All initial nodes running")
for node in Authority + Relay:
fingerprint = node.getStemController().get_info("fingerprint")
nodes_by_fingerprint[fingerprint] = node
track_introduction_point(node)
track_hs_node(hs_node_1)
def log_listener(logevent):
if "Successfully uploaded v2 rend descriptors" in logevent.message:
hs_node_1.getStemController().remove_event_listener(log_listener)
def start_listener(logevent):
# Probably after what needs waiting for
if "Successfully uploaded v2 rend descriptors" in logevent.message:
hs_node_2.getStemController().remove_event_listener(start_listener)
if check_same_intro_points():
thread.start_new_thread(start_test, ())
log("finished running start_test in another thread")
hs_node_2.getController().start()
track_hs_node(hs_node_2)
hs_node_2.getStemController().add_event_listener(start_listener, EventType.INFO)
hs_node_1.getStemController().add_event_listener(log_listener, EventType.INFO)
|