Working (and easy to use) multicast forwarding
[nepi.git] / src / nepi / testbeds / planetlab / node.py
index c357462..5e1445e 100644 (file)
@@ -113,6 +113,9 @@ class Node(object):
         self.rpmFusion = False
         self.env = collections.defaultdict(list)
         
+        # Some special applications - initialized when connected
+        self.multicast_forwarder = None
+        
         # Testbed-derived attributes
         self.slicename = None
         self.ident_path = None
@@ -404,7 +407,8 @@ class Node(object):
                     user = self.slicename,
                     agent = None,
                     ident_key = self.ident_path,
-                    server_key = self.server_key
+                    server_key = self.server_key,
+                    timeout = 600,
                     )
                 
                 if proc.wait():
@@ -448,7 +452,9 @@ class Node(object):
             user = self.slicename,
             agent = None,
             ident_key = self.ident_path,
-            server_key = self.server_key
+            server_key = self.server_key,
+            timeout = 60,
+            err_on_timeout = False
             )
         
         if proc.wait():
@@ -492,6 +498,8 @@ class Node(object):
                 ident_key = self.ident_path,
                 server_key = self.server_key,
                 tty = True, # so that ps -N -T works as advertised...
+                timeout = 60,
+                retry = 3
                 )
             proc.wait()
     
@@ -670,7 +678,8 @@ class Node(object):
             agent = None,
             ident_key = self.ident_path,
             server_key = self.server_key,
-            stdin = '\n'.join(rules)
+            stdin = '\n'.join(rules),
+            timeout = 300
             )
         
         if proc.wait() or err: