*/
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
*/
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);
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);
}
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);
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);
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);
&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 (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);
}
peer1.operation = NULL;
result = PEER1_STARTED;
common_operation =
- GNUNET_TESTBED_controller_link (controller1, neighbour1, NULL, cfg,
+ GNUNET_TESTBED_controller_link (NULL, controller1, neighbour1, NULL, cfg,
GNUNET_YES);
break;
case PEER2_CREATED:
result = PEER2_STARTED;
GNUNET_assert (NULL == common_operation);
common_operation =
- GNUNET_TESTBED_controller_link (controller1, neighbour2, NULL, cfg,
+ GNUNET_TESTBED_controller_link (NULL, controller1, neighbour2, NULL, cfg,
GNUNET_YES);
GNUNET_assert (NULL != common_operation);
break;
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);
{
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);
break;
default:
GNUNET_assert (0);
- }
-
+ }
}
GNUNET_assert (NULL != host);
cfg = GNUNET_CONFIGURATION_dup (config);
cp1 = GNUNET_TESTBED_controller_start ("127.0.0.1", host, cfg, status_cb,
- NULL);
+ NULL);
abort_task =
GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply
(GNUNET_TIME_UNIT_MINUTES, 3), &do_abort,
/**
- * Function to check if password-less SSH logins to given ip work
+ * Function to check if
+ * 1. Password-less SSH logins to given ip work
+ * 2. gnunet-helper-testbed is found on the PATH on the remote side
*
* @param host_str numeric representation of the host's ip
* @return GNUNET_YES if password-less SSH login to the given host works;
check_ssh (char *host_str)
{
char *const remote_args[] = {
- "ssh", "-o", "BatchMode=yes", "-o", "CheckHostIP=no", "-q",
- host_str, "echo", "SSH", "works", NULL
+ "ssh", "-o", "BatchMode=yes", "-o", "CheckHostIP=no",
+ "-o", "NoHostAuthenticationForLocalhost=yes", "-q",
+ host_str, "which", "gnunet-helper-testbed", NULL
};
struct GNUNET_OS_Process *auxp;
enum GNUNET_OS_ProcessStatusType type;
main (int argc, char **argv)
{
char *const argv2[] = { "test_testbed_api_3peers_3controllers",
- "-c", "test_testbed_api.conf",
- NULL
+ "-c", "test_testbed_api.conf",
+ NULL
};
struct GNUNET_GETOPT_CommandLineOption options[] = {
GNUNET_GETOPT_OPTION_END