[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnunet] branch master updated: add backchannel test; fix udp basic
From: |
gnunet |
Subject: |
[gnunet] branch master updated: add backchannel test; fix udp basic |
Date: |
Tue, 31 Dec 2019 06:43:17 +0100 |
This is an automated email from the git hooks/post-receive script.
martin-schanzenbach pushed a commit to branch master
in repository gnunet.
The following commit(s) were added to refs/heads/master by this push:
new 65b645e3c add backchannel test; fix udp basic
65b645e3c is described below
commit 65b645e3c3910401d43d922d46096aa22c6de9e7
Author: Schanzenbach, Martin <address@hidden>
AuthorDate: Tue Dec 31 14:39:56 2019 +0900
add backchannel test; fix udp basic
---
src/transport/Makefile.am | 23 ++++++++++++--
...> test_communicator_udp_backchannel_peer1.conf} | 3 ++
.../test_communicator_udp_backchannel_peer2.conf | 36 ++++++++++++++++++++++
...conf => test_communicator_udp_basic_peer1.conf} | 0
src/transport/transport-testing2.c | 33 ++++++++++++++++++--
5 files changed, 90 insertions(+), 5 deletions(-)
diff --git a/src/transport/Makefile.am b/src/transport/Makefile.am
index 7dbff2d44..c37a34ab7 100644
--- a/src/transport/Makefile.am
+++ b/src/transport/Makefile.am
@@ -599,7 +599,9 @@ check_PROGRAMS += \
test_communicator_basic-unix \
test_communicator_basic-tcp \
test_communicator_basic-udp \
- test_communicator_rekey-tcp
+ test_communicator_rekey-tcp \
+ test_communicator_rekey-udp \
+ test_communicator_backchannel-udp
endif
endif
@@ -813,6 +815,19 @@ test_communicator_rekey_tcp_LDADD = \
$(top_builddir)/src/testing/libgnunettesting.la \
$(top_builddir)/src/util/libgnunetutil.la
+test_communicator_rekey_udp_SOURCES = \
+ test_communicator_basic.c
+test_communicator_rekey_udp_LDADD = \
+ libgnunettransporttesting2.la \
+ $(top_builddir)/src/testing/libgnunettesting.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+
+test_communicator_backchannel_udp_SOURCES = \
+ test_communicator_basic.c
+test_communicator_backchannel_udp_LDADD = \
+ libgnunettransporttesting2.la \
+ $(top_builddir)/src/testing/libgnunettesting.la \
+ $(top_builddir)/src/util/libgnunetutil.la
endif
test_plugin_unix_SOURCES = \
@@ -1519,4 +1534,8 @@ test_communicator_basic_tcp_peer2.conf \
test_communicator_basic_udp_peer1.conf \
test_communicator_basic_udp_peer2.conf \
test_communicator_rekey_tcp_peer1.conf \
-test_communicator_rekey_tcp_peer2.conf
+test_communicator_rekey_tcp_peer2.conf \
+test_communicator_rekey_udp_peer1.conf \
+test_communicator_rekey_udp_peer2.conf \
+test_communicator_backchannel_udp_peer1.conf \
+test_communicator_backchannel_udp_peer2.conf
diff --git a/src/transport/test_communicator_udp_peer1.conf
b/src/transport/test_communicator_udp_backchannel_peer1.conf
similarity index 93%
copy from src/transport/test_communicator_udp_peer1.conf
copy to src/transport/test_communicator_udp_backchannel_peer1.conf
index 1b35d8e8a..0c595b77b 100644
--- a/src/transport/test_communicator_udp_peer1.conf
+++ b/src/transport/test_communicator_udp_backchannel_peer1.conf
@@ -31,3 +31,6 @@ DISABLE_V6 = YES
BINDTO = 60002
DISABLE_V6 = YES
MAX_QUEUE_LENGTH=5000
+
+[communicator-test]
+BACKCHANNEL_ENABLED = YES
diff --git a/src/transport/test_communicator_udp_backchannel_peer2.conf
b/src/transport/test_communicator_udp_backchannel_peer2.conf
new file mode 100644
index 000000000..d29f37ec9
--- /dev/null
+++ b/src/transport/test_communicator_udp_backchannel_peer2.conf
@@ -0,0 +1,36 @@
+@INLINE@ test_transport_defaults.conf
+
+[PATHS]
+GNUNET_TEST_HOME = $GNUNET_TMP/test-gnunetd-plugin-transport/
+
+[PEER]
+PRIVATE_KEY = $GNUNET_TMP/test-communicator-unix-2/private.key
+
+
+[transport-tcp]
+PORT = 52400
+
+[transport-udp]
+PORT = 52401
+
+[transport]
+PORT = 60001
+UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-transport_test_2.sock
+
+[nat]
+UNIXPATH = $GNUNET_TMP/test-communicator-unix-2/nat.sock
+
+[communicator-unix]
+UNIXPATH = $GNUNET_RUNTIME_DIR/test_gnunet-communicator-unix_2.sock
+
+[communicator-tcp]
+BINDTO = 60003
+DISABLE_V6 = YES
+
+[communicator-udp]
+BINDTO = 60003
+DISABLE_V6 = YES
+MAX_QUEUE_LENGTH=5000
+
+[communicator-test]
+BACKCHANNEL_ENABLED = YES
diff --git a/src/transport/test_communicator_udp_peer1.conf
b/src/transport/test_communicator_udp_basic_peer1.conf
similarity index 100%
rename from src/transport/test_communicator_udp_peer1.conf
rename to src/transport/test_communicator_udp_basic_peer1.conf
diff --git a/src/transport/transport-testing2.c
b/src/transport/transport-testing2.c
index 41d4ab937..893579bc5 100644
--- a/src/transport/transport-testing2.c
+++ b/src/transport/transport-testing2.c
@@ -150,6 +150,11 @@ struct GNUNET_TRANSPORT_TESTING_TransportCommunicatorHandle
* @brief Closure to the callback
*/
void *cb_cls;
+
+ /**
+ * Backchannel supported
+ */
+ int bc_enabled;
};
@@ -320,9 +325,28 @@ handle_communicator_backchannel (void *cls,
struct GNUNET_TRANSPORT_TESTING_TransportCommunicatorHandle *tc_h = cls;
struct GNUNET_MessageHeader *msg;
msg = (struct GNUNET_MessageHeader *) &bc_msg[1];
- size_t payload_len = ntohs (msg->size) - sizeof (struct
- GNUNET_MessageHeader);
-
+ struct GNUNET_TRANSPORT_CommunicatorBackchannelIncoming *cbi;
+ struct GNUNET_MQ_Envelope *env;
+ uint16_t isize = ntohs (msg->size);
+ const char *target_communicator = ((const char *) msg) + isize;
+ if (tc_h->bc_enabled != GNUNET_YES)
+ {
+ GNUNET_SERVICE_client_continue (tc_h->client);
+ return;
+ }
+ /* Find client providing this communicator */
+ /* Finally, deliver backchannel message to communicator */
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Delivering backchannel message of type %u to %s\n",
+ ntohs (msg->type),
+ target_communicator);
+ env = GNUNET_MQ_msg_extra (
+ cbi,
+ isize,
+ GNUNET_MESSAGE_TYPE_TRANSPORT_COMMUNICATOR_BACKCHANNEL_INCOMING);
+ cbi->pid = bc_msg->pid;
+ memcpy (&cbi[1], msg, isize);
+ GNUNET_MQ_send (tc_h->c_mq, env);
GNUNET_SERVICE_client_continue (tc_h->client);
}
@@ -873,6 +897,9 @@
GNUNET_TRANSPORT_TESTING_transport_communicator_service_start (
GNUNET_free (tc_h);
return NULL;
}
+ tc_h->bc_enabled = GNUNET_CONFIGURATION_get_value_yesno (tc_h->cfg,
+ "communicator-test",
+
"BACKCHANNEL_ENABLED");
tc_h->communicator_available_cb = communicator_available_cb;
tc_h->add_address_cb = add_address_cb;
tc_h->queue_create_reply_cb = queue_create_reply_cb;
--
To stop receiving notification emails like this one, please contact
address@hidden.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnunet] branch master updated: add backchannel test; fix udp basic,
gnunet <=