multiple operation queues for an operation
[oweals/gnunet.git] / src / testbed / test_testbed_api_3peers_3controllers.c
index f69355b3ce067317389b383434410fa297c16f4e..691e04727329b9d9eaa557dd5c3036893b0b98fe 100644 (file)
@@ -214,16 +214,6 @@ enum Stage
    */
   PEERS_1_2_CONNECTED,
 
-  /**
-   * Configuration of C has been acquired
-   */
-  CONTROLLER_CFG_ACQUIRED,
-
-  /**
-   * Linking controller B to C laterally
-   */
-  CONTROLLERS_LATERALLY_LINKED,
-
   /**
    * peer2 and peer3 are connected
    */
@@ -347,7 +337,17 @@ op_comp_cb (void *cls, struct GNUNET_TESTBED_Operation *op, const char *emsg)
     result = PEERS_1_2_CONNECTED;
     LOG (GNUNET_ERROR_TYPE_DEBUG, "Peers connected\n");
     common_operation = 
-       GNUNET_TESTBED_get_slave_config (NULL, controller1, neighbour2);
+        GNUNET_TESTBED_overlay_connect (NULL, &op_comp_cb, NULL, peer2.peer,
+                                         peer3.peer);
+    break;
+  case PEERS_1_2_CONNECTED:
+    GNUNET_assert (NULL != common_operation);
+    GNUNET_TESTBED_operation_done (common_operation);
+    common_operation = NULL;
+    result = PEERS_2_3_CONNECTED;
+    delayed_connect_task =
+          GNUNET_SCHEDULER_add_delayed (TIME_REL_SECS (3),
+                                        &do_delayed_connect, NULL);
     break;
   case PEERS_2_3_CONNECTED:
     GNUNET_assert (NULL == peer1.operation);
@@ -361,14 +361,6 @@ op_comp_cb (void *cls, struct GNUNET_TESTBED_Operation *op, const char *emsg)
     peer2.operation = GNUNET_TESTBED_peer_stop (peer2.peer, NULL, NULL);
     peer3.operation = GNUNET_TESTBED_peer_stop (peer3.peer, NULL, NULL);
     break;
-  case CONTROLLERS_LATERALLY_LINKED:
-    GNUNET_TESTBED_operation_done (common_operation);
-    common_operation = NULL;
-    result = PEERS_2_3_CONNECTED;
-    delayed_connect_task =
-       GNUNET_SCHEDULER_add_delayed (TIME_REL_SECS (3),
-                                     &do_delayed_connect, NULL);
-    break;
   default:
     GNUNET_assert (0);
   }
@@ -396,7 +388,7 @@ peer_create_cb (void *cls, struct GNUNET_TESTBED_Peer *peer, const char *emsg)
     peer1.peer = peer;
     GNUNET_TESTBED_operation_done (peer1.operation);
     result = PEER1_CREATED;
-    peer1.operation = GNUNET_TESTBED_peer_start (peer, NULL, NULL);
+    peer1.operation = GNUNET_TESTBED_peer_start (NULL, peer, NULL, NULL);
     break;
   case CONTROLLER2_UP:
     GNUNET_assert (NULL != peer2.operation);
@@ -405,7 +397,7 @@ peer_create_cb (void *cls, struct GNUNET_TESTBED_Peer *peer, const char *emsg)
     peer2.peer = peer;
     GNUNET_TESTBED_operation_done (peer2.operation);
     result = PEER2_CREATED;
-    peer2.operation = GNUNET_TESTBED_peer_start (peer, NULL, NULL);
+    peer2.operation = GNUNET_TESTBED_peer_start (NULL, peer, NULL, NULL);
     break;
   case CONTROLLER3_UP:
     GNUNET_assert (NULL != peer3.operation);
@@ -414,7 +406,7 @@ peer_create_cb (void *cls, struct GNUNET_TESTBED_Peer *peer, const char *emsg)
     peer3.peer = peer;
     GNUNET_TESTBED_operation_done (peer3.operation);
     result = PEER3_CREATED;
-    peer3.operation = GNUNET_TESTBED_peer_start (peer, NULL, NULL);
+    peer3.operation = GNUNET_TESTBED_peer_start (NULL, peer, NULL, NULL);
     break;
   default:
     GNUNET_assert (0);
@@ -502,24 +494,6 @@ controller_cb (void *cls, const struct GNUNET_TESTBED_EventInformation *event)
                                       &peer_create_cb, NULL);
       GNUNET_assert (NULL != peer3.operation);
       break;
-    case PEERS_1_2_CONNECTED:
-      GNUNET_assert (NULL != event->details.operation_finished.generic);
-      cfg2 = 
-         GNUNET_CONFIGURATION_dup (event->details.operation_finished.generic);
-      GNUNET_TESTBED_operation_done (common_operation);
-      result = CONTROLLER_CFG_ACQUIRED;
-      common_operation =
-         GNUNET_TESTBED_controller_link (NULL, controller1, neighbour2, neighbour1,
-                                         cfg2, GNUNET_NO);
-      break;
-    case CONTROLLER_CFG_ACQUIRED:
-      GNUNET_assert (NULL == event->details.operation_finished.generic);
-      GNUNET_TESTBED_operation_done (common_operation);
-      result = CONTROLLERS_LATERALLY_LINKED;
-      common_operation =
-         GNUNET_TESTBED_overlay_connect (NULL, &op_comp_cb, NULL, peer2.peer,
-                                         peer3.peer);      
-      break;
     default:
       GNUNET_assert (0);
     }
@@ -556,8 +530,8 @@ controller_cb (void *cls, const struct GNUNET_TESTBED_EventInformation *event)
       peer3.operation = NULL;
       result = PEER3_STARTED;
       common_operation =
-          GNUNET_TESTBED_overlay_connect (NULL, &op_comp_cb, NULL, peer1.peer,
-                                          peer2.peer);
+          GNUNET_TESTBED_overlay_connect (NULL, &op_comp_cb, NULL, peer2.peer,
+                                          peer1.peer);
       break;
     default:
       GNUNET_assert (0);
@@ -600,18 +574,18 @@ controller_cb (void *cls, const struct GNUNET_TESTBED_EventInformation *event)
     {
     case PEER3_STARTED:
       GNUNET_assert (NULL != common_operation);
-      GNUNET_assert ((event->details.peer_connect.peer1 == peer1.peer) &&
-                    (event->details.peer_connect.peer2 == peer2.peer));
+      GNUNET_assert ((event->details.peer_connect.peer1 == peer2.peer) &&
+                    (event->details.peer_connect.peer2 == peer1.peer));
       break;
     case PEERS_2_3_CONNECTED:
       GNUNET_assert (NULL != common_operation);
       GNUNET_assert ((event->details.peer_connect.peer1 == peer1.peer) &&
                     (event->details.peer_connect.peer2 == peer2.peer));
       break;
-    case CONTROLLERS_LATERALLY_LINKED:
+    case PEERS_1_2_CONNECTED: 
       GNUNET_assert (NULL != common_operation);
       GNUNET_assert ((event->details.peer_connect.peer1 == peer2.peer) &&
-                    (event->details.peer_connect.peer2 == peer3.peer));
+                    (event->details.peer_connect.peer2 == peer3.peer));      
       break;
     default:
       GNUNET_assert (0);