From 969dff9671797e21659af0f5ff9e6aa3f5e3ad8b Mon Sep 17 00:00:00 2001
From: Christopher Baines <cb15g11@soton.ac.uk>
Date: Mon, 24 Feb 2014 23:07:50 +0000
Subject: Some things

---
 networks/hidden-service | 50 ++++++++++++++++++++++++++++++++++++++++++-------
 1 file changed, 43 insertions(+), 7 deletions(-)

(limited to 'networks/hidden-service')

diff --git a/networks/hidden-service b/networks/hidden-service
index 3f000e1..bcaf0ef 100644
--- a/networks/hidden-service
+++ b/networks/hidden-service
@@ -1,10 +1,46 @@
-Authority = Node(tag="a", authority=1, relay=1, torrc="authority.tmpl")
-Relay = Node(tag="r", relay=1, torrc="intro.tmpl")
-Client = Node(tag="c", torrc="client.tmpl")
+Authority = Node.create(3, {
+    "tag": "a",
+    "authority": 1,
+    "relay": 1,
+    "torrc": "authority.tmpl"
+})
 
-HiddenService = Node(tag="h", hiddenservice=1, torrc="hidden-service.tmpl", hiddenservicetarget="127.0.0.1:8081")
-DelayedHiddenService = Node(tag="h", hiddenservice=1, torrc="hidden-service.tmpl", delay=60*10, hiddenservicetarget="127.0.0.1:8082")
+Relay = Node.create(5, {
+    "tag": "r",
+    "relay": 1,
+    "torrc": "intro.tmpl"
+})
 
-NODES = Authority.getN(3) + Relay.getN(5) + Client.getN(4) + HiddenService.getN(1) + DelayedHiddenService.getN(1)
+Client = Node.create(4, {
+    "tag": "c",
+    "torrc": "client.tmpl"
+})
 
-ConfigureNodes(NODES)
+initialNodes = Authority + Relay + Client
+
+HiddenService = Node(
+    tag="h",
+    hiddenservice=1,
+    torrc="hidden-service.tmpl",
+    hiddenservicetarget="127.0.0.1:8081"
+)
+
+initialNodes.append(HiddenService)
+
+DelayedHiddenService = Node(
+    tag="h",
+    hiddenservice=1,
+    torrc="hidden-service.tmpl",
+    hiddenservicetarget="127.0.0.1:8082"
+)
+
+def start():
+    if not all([ n.getController().start() for n in initialNodes ]):
+        return False
+
+    def log_listener(logevent):
+        print(logevent.message)
+        if "Successfully uploaded v2 rend descriptors" in logevent.message:
+            DelayedHiddenService.getController().start()
+
+    HiddenService.getStemController().add_event_listener(log_listener, EventType.INFO)
-- 
cgit v1.2.3