From 7f07f09d52aed7c449a330d8a82c1280776e49e0 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 21 Oct 2017 16:37:12 +0000 Subject: move docmentation to separate folder --- doc/documentation/testbed_test.c | 99 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 doc/documentation/testbed_test.c (limited to 'doc/documentation/testbed_test.c') diff --git a/doc/documentation/testbed_test.c b/doc/documentation/testbed_test.c new file mode 100644 index 0000000000..1696234b05 --- /dev/null +++ b/doc/documentation/testbed_test.c @@ -0,0 +1,99 @@ +#include +#include +#include +#include +#include + +#define NUM_PEERS 20 + +static struct GNUNET_TESTBED_Operation *dht_op; + +static struct GNUNET_DHT_Handle *dht_handle; + + +struct MyContext +{ + int ht_len; +} ctxt; + + +static int result; + + +static void +shutdown_task (void *cls) +{ + if (NULL != dht_op) + { + GNUNET_TESTBED_operation_done (dht_op); + dht_op = NULL; + dht_handle = NULL; + } + result = GNUNET_OK; +} + + +static void +service_connect_comp (void *cls, + struct GNUNET_TESTBED_Operation *op, + void *ca_result, + const char *emsg) +{ + GNUNET_assert (op == dht_op); + dht_handle = ca_result; + // Do work here... + GNUNET_SCHEDULER_shutdown (); +} + + +static void * +dht_ca (void *cls, const struct GNUNET_CONFIGURATION_Handle *cfg) +{ + struct MyContext *ctxt = cls; + + dht_handle = GNUNET_DHT_connect (cfg, ctxt->ht_len); + return dht_handle; +} + + +static void +dht_da (void *cls, void *op_result) +{ + struct MyContext *ctxt = cls; + + GNUNET_DHT_disconnect ((struct GNUNET_DHT_Handle *) op_result); + dht_handle = NULL; +} + + +static void +test_master (void *cls, + struct GNUNET_TESTBED_RunHandle *h, + unsigned int num_peers, + struct GNUNET_TESTBED_Peer **peers, + unsigned int links_succeeded, + unsigned int links_failed) +{ + ctxt.ht_len = 10; + dht_op = GNUNET_TESTBED_service_connect + (NULL, peers[0], "dht", + &service_connect_comp, NULL, + &dht_ca, &dht_da, &ctxt); + GNUNET_SCHEDULER_add_shutdown (&shutdown_task, NULL); +} + + +int +main (int argc, char **argv) +{ + int ret; + + result = GNUNET_SYSERR; + ret = GNUNET_TESTBED_test_run + ("awesome-test", "template.conf", + NUM_PEERS, 0LL, + NULL, NULL, &test_master, NULL); + if ( (GNUNET_OK != ret) || (GNUNET_OK != result) ) + return 1; + return 0; +} -- cgit v1.2.3-70-g09d2