gnunet

Main GNUnet Logic
Log | Files | Refs | Submodules | README | LICENSE

commit 63a7eb6a3a94d43368b348c0a677bc77653cbe51
parent 6140d64e1c55e76de3ff520143b10290fa1ba197
Author: t3sserakt <t3ss@posteo.de>
Date:   Fri, 23 Jul 2021 22:17:29 +0200

- smaller bug fixes

Diffstat:
Msrc/include/gnunet_testing_ng_lib.h | 25-------------------------
Msrc/include/gnunet_transport_service.h | 14--------------
Msrc/testbed/Makefile.am | 1+
Msrc/testbed/netjail_exec.sh | 2+-
Msrc/testbed/netjail_start.sh | 2+-
Msrc/testbed/netjail_stop.sh | 2+-
Msrc/testbed/testbed_api_cmd_netjail_start.c | 2+-
Msrc/testbed/testbed_api_cmd_netjail_start_testbed.c | 24++++++++++++------------
Msrc/testbed/testbed_api_cmd_netjail_stop.c | 2+-
Msrc/testing/testing_api_cmd_system_create.c | 5+++++
Msrc/transport/Makefile.am | 28++++++++++++++--------------
Msrc/transport/plugin_cmd_simple_send.c | 74+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----------
Msrc/transport/test_transport_api_cmd_simple_send.c | 8++++----
Msrc/transport/transport-testing2.h | 37+++++++++++++++++++++++++++++++++++++
Msrc/transport/transport_api_cmd_connecting_peers.c | 14+++++++-------
Msrc/transport/transport_api_cmd_send_simple.c | 8++++----
Msrc/transport/transport_api_cmd_start_peer.c | 34+++++++++++++++++-----------------
17 files changed, 169 insertions(+), 113 deletions(-)

diff --git a/src/include/gnunet_testing_ng_lib.h b/src/include/gnunet_testing_ng_lib.h @@ -833,31 +833,6 @@ GNUNET_TESTING_get_trait_what_am_i (const struct GNUNET_TESTING_Command *cmd, char **what_am_i); - -int -GNUNET_TESTING_get_trait_peer_id (const struct - GNUNET_TESTING_Command *cmd, - struct GNUNET_PeerIdentity **id); - -int -GNUNET_TESTING_get_trait_connected_peers_map (const struct - GNUNET_TESTING_Command - *cmd, - struct - GNUNET_CONTAINER_MultiPeerMap ** - connected_peers_map); -int -GNUNET_TESTING_get_trait_hello_size (const struct - GNUNET_TESTING_Command - *cmd, - size_t **hello_size); - -int -GNUNET_TESTING_get_trait_hello (const struct - GNUNET_TESTING_Command - *cmd, - char **hello); - int GNUNET_TESTING_get_trait_test_system (const struct GNUNET_TESTING_Command *cmd, diff --git a/src/include/gnunet_transport_service.h b/src/include/gnunet_transport_service.h @@ -686,20 +686,6 @@ GNUNET_TRANSPORT_core_get_mq (struct GNUNET_TRANSPORT_CoreHandle *handle, const struct GNUNET_PeerIdentity *peer); -struct GNUNET_TESTING_Command -GNUNET_TRANSPORT_cmd_start_peer (const char *label, - const char *system_label, - char *m, - char *n, - struct GNUNET_MQ_MessageHandler *handlers, - const char *cfgname); - -struct GNUNET_TESTING_Command -GNUNET_TRANSPORT_cmd_connect_peers (const char *label, - const char *peer1_label, - const char *peer2_label); - - #if 0 /* keep Emacsens' auto-indent happy */ { #endif diff --git a/src/testbed/Makefile.am b/src/testbed/Makefile.am @@ -101,6 +101,7 @@ gnunet_cmds_helper_SOURCES = \ gnunet_cmds_helper_LDADD = $(XLIB) \ $(top_builddir)/src/util/libgnunetutil.la \ $(top_builddir)/src/testing/libgnunettesting.la \ + $(top_builddir)/src/transport/libgnunettransport.la \ libgnunettestbed.la \ $(LTLIBINTL) $(Z_LIBS) diff --git a/src/testbed/netjail_exec.sh b/src/testbed/netjail_exec.sh @@ -1,5 +1,5 @@ #!/bin/sh -. "./netjail_core.sh" +. "./../testbed/netjail_core.sh" set -eu set -x diff --git a/src/testbed/netjail_start.sh b/src/testbed/netjail_start.sh @@ -1,5 +1,5 @@ #!/bin/sh -. "./netjail_core.sh" +. "./../testbed/netjail_core.sh" set -eu set -x diff --git a/src/testbed/netjail_stop.sh b/src/testbed/netjail_stop.sh @@ -1,5 +1,5 @@ #!/bin/sh -. "./netjail_core.sh" +. "./../testbed/netjail_core.sh" set -eu set -x diff --git a/src/testbed/testbed_api_cmd_netjail_start.c b/src/testbed/testbed_api_cmd_netjail_start.c @@ -28,7 +28,7 @@ #include "gnunet_testing_ng_lib.h" #include "gnunet_testbed_ng_service.h" -#define NETJAIL_START_SCRIPT "./netjail_start.sh" +#define NETJAIL_START_SCRIPT "./../testbed/netjail_start.sh" struct NetJailState { diff --git a/src/testbed/testbed_api_cmd_netjail_start_testbed.c b/src/testbed/testbed_api_cmd_netjail_start_testbed.c @@ -30,7 +30,7 @@ #include "testbed_api_hosts.h" #include "testbed_helper.h" -#define NETJAIL_EXEC_SCRIPT "./netjail_exec.sh" +#define NETJAIL_EXEC_SCRIPT "./../testbed/netjail_exec.sh" struct HelperMessage; @@ -319,15 +319,15 @@ create_helper_init_msg_ (char *m_char, static void start_testbed (struct NetJailState *ns, struct GNUNET_CONFIGURATION_Handle *config, - char *n_char, - char *m_char) + char *m_char, + char *n_char) { - struct GNUNET_CONFIGURATION_Handle *cfg; + // struct GNUNET_CONFIGURATION_Handle *cfg; struct GNUNET_CMDS_HelperInit *msg; struct TestbedCount *tbc; char *const script_argv[] = {NETJAIL_EXEC_SCRIPT, - n_char, m_char, + n_char, GNUNET_OS_get_libexec_binary_path ( HELPER_CMDS_BINARY), ns->global_n, @@ -345,17 +345,17 @@ start_testbed (struct NetJailState *ns, struct tbc->ns = ns; tbc->count = (n - 1) * atoi (ns->local_m) + m; - cfg = GNUNET_CONFIGURATION_dup (config); + // cfg = GNUNET_CONFIGURATION_dup (config); // TODO We do not need this? - GNUNET_array_append (ns->host, ns->n_host, + /*GNUNET_array_append (ns->host, ns->n_host, GNUNET_TESTBED_host_create_with_id (tbc->count - 1, NULL, NULL, cfg, - 0)); + 0));*/ - if ((GNUNET_YES != GNUNET_DISK_file_test ("test_testbed_api.conf")) || + /*if ((GNUNET_YES != GNUNET_DISK_file_test ("test_testbed_api.conf")) || (GNUNET_SYSERR == GNUNET_CONFIGURATION_load (config, "test_testbed_api.conf"))) { @@ -363,7 +363,7 @@ start_testbed (struct NetJailState *ns, struct _ ( "Unreadable or malformed configuration file `%s', exit ...\n"), "test_testbed_api.conf"); - } + }*/ GNUNET_array_append (ns->helper, ns->n_helper, GNUNET_HELPER_start ( GNUNET_YES, @@ -425,8 +425,8 @@ netjail_exec_run (void *cls, sprintf (str_n, "%d", i); sprintf (str_m, "%d", j); start_testbed (ns, config, - str_n, - str_m); + str_m, + str_n); } } } diff --git a/src/testbed/testbed_api_cmd_netjail_stop.c b/src/testbed/testbed_api_cmd_netjail_stop.c @@ -29,7 +29,7 @@ #include "gnunet_testbed_ng_service.h" -#define NETJAIL_STOP_SCRIPT "./netjail_stop.sh" +#define NETJAIL_STOP_SCRIPT "./../testbed/netjail_stop.sh" struct GNUNET_ChildWaitHandle *cwh; diff --git a/src/testing/testing_api_cmd_system_create.c b/src/testing/testing_api_cmd_system_create.c @@ -43,10 +43,15 @@ system_create_run (void *cls, { struct TestSystemState *tss = cls; + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "system create\n"); + tss->test_system = GNUNET_TESTING_system_create (tss->testdir, NULL, NULL, NULL); + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "system created\n"); } static int diff --git a/src/transport/Makefile.am b/src/transport/Makefile.am @@ -397,20 +397,20 @@ plugin_LTLIBRARIES = \ $(HTTP_SERVER_PLUGIN_LA) \ $(HTTPS_SERVER_PLUGIN_LA) \ $(WLAN_PLUGIN_LA) \ - $(BT_PLUGIN_LA) -# libgnunet_plugin_cmd_simple_send.la - -# libgnunet_plugin_cmd_simple_send_la_SOURCES = \ -# plugin_cmd_simple_send.c -# libgnunet_plugin_cmd_simple_send_la_LIBADD = \ -# $(top_builddir)/src/util/libgnunetutil.la \ -# $(top_builddir)/src/testing/libgnunettesting.la \ -# $(top_builddir)/src/statistics/libgnunetstatistics.la \ -# $(top_builddir)/src/testbed/libgnunettestbed.la \ -# libgnunettransport.la \ -# $(LTLIBINTL) -# libgnunet_plugin_cmd_simple_send_la_LDFLAGS = \ -# $(GN_PLUGIN_LDFLAGS) + $(BT_PLUGIN_LA) \ + libgnunet_plugin_cmd_simple_send.la + +libgnunet_plugin_cmd_simple_send_la_SOURCES = \ + plugin_cmd_simple_send.c +libgnunet_plugin_cmd_simple_send_la_LIBADD = \ + $(top_builddir)/src/util/libgnunetutil.la \ + $(top_builddir)/src/testing/libgnunettesting.la \ + $(top_builddir)/src/statistics/libgnunetstatistics.la \ + $(top_builddir)/src/testbed/libgnunettestbed.la \ + libgnunettransporttesting2.la \ + $(LTLIBINTL) +libgnunet_plugin_cmd_simple_send_la_LDFLAGS = \ + $(GN_PLUGIN_LDFLAGS) if HAVE_EXPERIMENTAL plugin_LTLIBRARIES += libgnunet_plugin_transport_udp.la diff --git a/src/transport/plugin_cmd_simple_send.c b/src/transport/plugin_cmd_simple_send.c @@ -19,7 +19,7 @@ */ /** - * @file testbed/plugin_testcmd.c + * @file testbed/plugin_cmd_simple_send.c * @brief a plugin to provide the API for running test cases. * @author t3sserakt */ @@ -27,8 +27,10 @@ #include "gnunet_testing_ng_lib.h" #include "gnunet_util_lib.h" #include "gnunet_transport_application_service.h" -#include "gnunet_transport_service.h" +// #include "gnunet_transport_service.h" #include "gnunet_testbed_ng_service.h" +#include "transport-testing2.h" + /** * Generic logging shortcut */ @@ -38,10 +40,38 @@ struct GNUNET_MQ_MessageHandler *handlers; -const char *cfgname; - unsigned int are_all_peers_started; +static int +check_test (void *cls, + const struct GNUNET_TRANSPORT_TESTING_TestMessage *message) +{ + return GNUNET_OK; +} + +static void +handle_test (void *cls, + const struct GNUNET_TRANSPORT_TESTING_TestMessage *message) +{ + LOG (GNUNET_ERROR_TYPE_ERROR, + "message received\n"); +} + +static int +check_test2 (void *cls, + const struct GNUNET_TRANSPORT_TESTING_TestMessage *message) +{ + return GNUNET_OK; +} + +static void +handle_test2 (void *cls, + const struct GNUNET_TRANSPORT_TESTING_TestMessage *message) +{ + LOG (GNUNET_ERROR_TYPE_ERROR, + "message received\n"); +} + static void all_peers_started () { @@ -58,6 +88,16 @@ start_testcase (TESTBED_CMD_HELPER_write_cb write_message, char *router_ip, char *n) { char *testdir; + char *cfgname; + + GNUNET_asprintf (&cfgname, + "%s%s.conf", + "test_transport_api2_tcp_peer", + n); + + LOG (GNUNET_ERROR_TYPE_ERROR, + "cfgname: %s\n", + cfgname); testdir = GNUNET_malloc (strlen (BASE_DIR) + strlen (m) + strlen (n) + 1); @@ -66,22 +106,34 @@ start_testcase (TESTBED_CMD_HELPER_write_cb write_message, char *router_ip, strcat (testdir, m); strcat (testdir, n); + struct GNUNET_MQ_MessageHandler handlers[] = { + GNUNET_MQ_hd_var_size (test, + GNUNET_TRANSPORT_TESTING_SIMPLE_MTYPE, + struct GNUNET_TRANSPORT_TESTING_TestMessage, + NULL), + GNUNET_MQ_hd_var_size (test2, + GNUNET_TRANSPORT_TESTING_SIMPLE_MTYPE2, + struct GNUNET_TRANSPORT_TESTING_TestMessage, + NULL), + GNUNET_MQ_handler_end () + }; + struct GNUNET_TESTING_Command commands[] = { GNUNET_TESTING_cmd_system_create ("system-create-1", testdir), - /*GNUNET_TRANSPORT_cmd_start_peer ("start-peer-1", + GNUNET_TRANSPORT_cmd_start_peer ("start-peer-1", "system-create-1", m, n, handlers, - cfgname),*/ + cfgname), GNUNET_TESTING_cmd_send_peer_ready ("send-peer-ready-1", write_message), GNUNET_TESTING_cmd_block_until_all_peers_started ("block-1", &are_all_peers_started), - /*GNUNET_TRANSPORT_cmd_connect_peers ("connect-peers-1", + GNUNET_TRANSPORT_cmd_connect_peers ("connect-peers-1", "start-peer-1", - "this is useless"),*/ + "this is useless"), /*GNUNET_TESTING_cmd_send_simple ("send-simple-1", char *m, char *n, @@ -106,7 +158,7 @@ start_testcase (TESTBED_CMD_HELPER_write_cb write_message, char *router_ip, * @return the exported block API */ void * -libgnunet_plugin_testcmd_init (void *cls) +libgnunet_plugin_cmd_simple_send_init (void *cls) { struct GNUNET_TESTING_PluginFunctions *api; @@ -124,7 +176,7 @@ libgnunet_plugin_testcmd_init (void *cls) * @return NULL */ void * -libgnunet_plugin_testcmd_done (void *cls) +libgnunet_plugin_cmd_simple_send_done (void *cls) { struct GNUNET_TESTING_PluginFunctions *api = cls; @@ -133,4 +185,4 @@ libgnunet_plugin_testcmd_done (void *cls) } -/* end of plugin_testcmd.c */ +/* end of plugin_cmd_simple_send.c */ diff --git a/src/transport/test_transport_api_cmd_simple_send.c b/src/transport/test_transport_api_cmd_simple_send.c @@ -41,18 +41,18 @@ run (void *cls) struct GNUNET_TESTING_Command commands[] = { GNUNET_TESTBED_cmd_netjail_start ("netjail-start-1", "2", - "2"), + "1"), GNUNET_TESTBED_cmd_netjail_start_testbed ("netjail-start-testbed-1", "2", - "2", + "1", "libgnunet_plugin_cmd_simple_send"), GNUNET_TESTBED_cmd_stop_testbed ("stop-testbed", "netjail-start-testbed-1", "2", - "2"), + "1"), GNUNET_TESTBED_cmd_netjail_stop ("netjail-stop-1", "2", - "2"), + "1"), GNUNET_TESTING_cmd_end () }; diff --git a/src/transport/transport-testing2.h b/src/transport/transport-testing2.h @@ -920,5 +920,42 @@ GNUNET_TRANSPORT_TESTING_get_test_plugin_name (const char *executable, char * GNUNET_TRANSPORT_TESTING_get_test_source_name (const char *file); +struct GNUNET_TESTING_Command +GNUNET_TRANSPORT_cmd_start_peer (const char *label, + const char *system_label, + char *m, + char *n, + struct GNUNET_MQ_MessageHandler *handlers, + const char *cfgname); + +struct GNUNET_TESTING_Command +GNUNET_TRANSPORT_cmd_connect_peers (const char *label, + const char *peer1_label, + const char *peer2_label); + +int +GNUNET_TRANSPORT_get_trait_peer_id (const struct + GNUNET_TESTING_Command *cmd, + struct GNUNET_PeerIdentity **id); + +int +GNUNET_TRANSPORT_get_trait_connected_peers_map (const struct + GNUNET_TESTING_Command + *cmd, + struct + GNUNET_CONTAINER_MultiPeerMap ** + connected_peers_map); +int +GNUNET_TRANSPORT_get_trait_hello_size (const struct + GNUNET_TESTING_Command + *cmd, + size_t **hello_size); + +int +GNUNET_TRANSPORT_get_trait_hello (const struct + GNUNET_TESTING_Command + *cmd, + char **hello); + #endif /* end of transport_testing.h */ diff --git a/src/transport/transport_api_cmd_connecting_peers.c b/src/transport/transport_api_cmd_connecting_peers.c @@ -63,8 +63,8 @@ connect_peers_run (void *cls, GNUNET_TRANSPORT_get_trait_application_handle (peer1_cmd, &ah); - GNUNET_TESTING_get_trait_hello (peer1_cmd, - &hello); + GNUNET_TRANSPORT_get_trait_hello (peer1_cmd, + &hello); LOG (GNUNET_ERROR_TYPE_ERROR, "hello: %s\n", @@ -73,11 +73,11 @@ connect_peers_run (void *cls, // TODO This does not work, because the other peer is running in another local loop. We need to message between different local loops. For now we will create the hello manually with the known information about the other local peers. // --------------------------------------------- /*peer2_cmd = GNUNET_TESTING_interpreter_lookup_command (cps->peer2_label); - GNUNET_TESTING_get_trait_peer_id (peer2_cmd, + GNUNET_TRANSPORT_get_trait_peer_id (peer2_cmd, &id); - GNUNET_TESTING_get_trait_hello (peer2_cmd, + GNUNET_TRANSPORT_get_trait_hello (peer2_cmd, &hello); - GNUNET_TESTING_get_trait_hello_size (peer2_cmd, + GNUNET_TRANSPORT_get_trait_hello_size (peer2_cmd, &hello_size); addr = GNUNET_HELLO_extract_address (hello, @@ -108,11 +108,11 @@ connect_peers_finish (void *cls, struct GNUNET_PeerIdentity *id; peer1_cmd = GNUNET_TESTING_interpreter_lookup_command (cps->peer1_label); - GNUNET_TESTING_get_trait_peer_id (peer1_cmd, + GNUNET_TRANSPORT_get_trait_peer_id (peer1_cmd, &id); peer2_cmd = GNUNET_TESTING_interpreter_lookup_command (cps->peer2_label); - GNUNET_TESTING_get_trait_connected_peers_map (peer2_cmd, + GNUNET_TRANSPORT_get_trait_connected_peers_map (peer2_cmd, &connected_peers_map); ret = GNUNET_CONTAINER_multipeermap_contains (connected_peers_map, diff --git a/src/transport/transport_api_cmd_send_simple.c b/src/transport/transport_api_cmd_send_simple.c @@ -76,12 +76,12 @@ send_simple_run (void *cls, const struct GNUNET_TESTING_Command *peer2_cmd; peer1_cmd = GNUNET_TESTING_interpreter_lookup_command (sss->peer1_label); - GNUNET_TESTING_get_trait_connected_peers_map (peer1_cmd, - &connected_peers_map); + GNUNET_TRANSPORT_get_trait_connected_peers_map (peer1_cmd, + &connected_peers_map); peer2_cmd = GNUNET_TESTING_interpreter_lookup_command (sss->peer2_label); - GNUNET_TESTING_get_trait_peer_id (peer2_cmd, - &id); + GNUNET_TRANSPORT_get_trait_peer_id (peer2_cmd, + &id); mq = GNUNET_CONTAINER_multipeermap_get (connected_peers_map, id); diff --git a/src/transport/transport_api_cmd_start_peer.c b/src/transport/transport_api_cmd_start_peer.c @@ -445,10 +445,10 @@ start_peer_traits (void *cls, } int -GNUNET_TESTING_get_trait_hello_size (const struct - GNUNET_TESTING_Command - *cmd, - size_t **hello_size) +GNUNET_TRANSPORT_get_trait_hello_size (const struct + GNUNET_TESTING_Command + *cmd, + size_t **hello_size) { return cmd->traits (cmd->cls, (const void **) hello_size, @@ -457,10 +457,10 @@ GNUNET_TESTING_get_trait_hello_size (const struct } int -GNUNET_TESTING_get_trait_hello (const struct - GNUNET_TESTING_Command - *cmd, - char **hello) +GNUNET_TRANSPORT_get_trait_hello (const struct + GNUNET_TESTING_Command + *cmd, + char **hello) { return cmd->traits (cmd->cls, (const void **) hello, @@ -469,12 +469,12 @@ GNUNET_TESTING_get_trait_hello (const struct } int -GNUNET_TESTING_get_trait_connected_peers_map (const struct - GNUNET_TESTING_Command - *cmd, - struct - GNUNET_CONTAINER_MultiPeerMap ** - connected_peers_map) +GNUNET_TRANSPORT_get_trait_connected_peers_map (const struct + GNUNET_TESTING_Command + *cmd, + struct + GNUNET_CONTAINER_MultiPeerMap ** + connected_peers_map) { return cmd->traits (cmd->cls, (const void **) connected_peers_map, @@ -498,9 +498,9 @@ GNUNET_TRANSPORT_get_trait_application_handle (const struct int -GNUNET_TESTING_get_trait_peer_id (const struct - GNUNET_TESTING_Command *cmd, - struct GNUNET_PeerIdentity **id) +GNUNET_TRANSPORT_get_trait_peer_id (const struct + GNUNET_TESTING_Command *cmd, + struct GNUNET_PeerIdentity **id) { return cmd->traits (cmd->cls, (const void **) id,