From 59a1974b48463e363442bd4e8f81741ee86d4123 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Mon, 25 Jul 2016 16:21:08 +0000 Subject: [PATCH] -preparatory steps for transport API change --- src/core/gnunet-service-core_kx.c | 45 +++++++++++++++++++++-- src/core/gnunet-service-core_kx.h | 9 +++++ src/core/gnunet-service-core_neighbours.c | 7 +--- 3 files changed, 52 insertions(+), 9 deletions(-) diff --git a/src/core/gnunet-service-core_kx.c b/src/core/gnunet-service-core_kx.c index f2d3e0492..6a71099ae 100644 --- a/src/core/gnunet-service-core_kx.c +++ b/src/core/gnunet-service-core_kx.c @@ -1607,6 +1607,41 @@ GSC_KX_handle_encrypted_message (struct GSC_KeyExchangeInfo *kx, } +/** + * Obtain the array of message handlers provided by KX. + * + * @return NULL-entry terminated array of handlers + */ +const struct GNUNET_MQ_MessageHandler * +GSC_KX_get_handlers (void) +{ +#if 0 + GNUNET_MQ_hd_fixed_size (ephemeral_key, + GNUNET_MESSAGE_TYPE_CORE_EPHEMERAL_KEY, + struct EphemeralKeyMessage); + GNUNET_MQ_hd_fixed_size (ping, + PING, + struct PingMessage); + GNUNET_MQ_hd_fixed_size (pong, + PING, + struct PongMessage); + GNUNET_MQ_hd_var_size (encrypted, + PING, + struct ping); +#endif + static struct GNUNET_MQ_MessageHandler handlers[] = { +#if 0 + make_ephemeral_key_handler (), + make_ping_handler (), + make_pong_handler (), + make_encrypted_handler (), +#endif + GNUNET_MQ_handler_end() + }; + return handlers; +} + + /** * Deliver P2P message to interested clients. * Invokes send twice, once for clients that want the full message, and once @@ -1641,10 +1676,12 @@ deliver_message (void *cls, GSC_SESSIONS_confirm_typemap (dmc->peer, m); return GNUNET_OK; default: - GSC_CLIENTS_deliver_message (dmc->peer, m, + GSC_CLIENTS_deliver_message (dmc->peer, + m, ntohs (m->size), GNUNET_CORE_OPTION_SEND_FULL_INBOUND); - GSC_CLIENTS_deliver_message (dmc->peer, m, + GSC_CLIENTS_deliver_message (dmc->peer, + m, sizeof (struct GNUNET_MessageHeader), GNUNET_CORE_OPTION_SEND_HDR_INBOUND); } @@ -1686,8 +1723,8 @@ sign_ephemeral_key () current_ekm.origin_identity = GSC_my_identity; GNUNET_assert (GNUNET_OK == GNUNET_CRYPTO_eddsa_sign (my_private_key, - ¤t_ekm.purpose, - ¤t_ekm.signature)); + ¤t_ekm.purpose, + ¤t_ekm.signature)); } diff --git a/src/core/gnunet-service-core_kx.h b/src/core/gnunet-service-core_kx.h index 343015de5..7649315ce 100644 --- a/src/core/gnunet-service-core_kx.h +++ b/src/core/gnunet-service-core_kx.h @@ -36,6 +36,15 @@ struct GSC_KeyExchangeInfo; +/** + * Obtain the array of message handlers provided by KX. + * + * @return NULL-entry terminated array of handlers + */ +const struct GNUNET_MQ_MessageHandler * +GSC_KX_get_handlers (void); + + /** * We received a EPHEMERAL_KEY message. Validate and update * our key material and status. diff --git a/src/core/gnunet-service-core_neighbours.c b/src/core/gnunet-service-core_neighbours.c index e241d829f..7af49a3b3 100644 --- a/src/core/gnunet-service-core_neighbours.c +++ b/src/core/gnunet-service-core_neighbours.c @@ -479,9 +479,6 @@ handle_transport_receive (void *cls, case GNUNET_MESSAGE_TYPE_CORE_ENCRYPTED_MESSAGE: GSC_KX_handle_encrypted_message (n->kxinfo, message); break; - case GNUNET_MESSAGE_TYPE_DUMMY: - /* Dummy messages for testing / benchmarking, just discard */ - break; default: GNUNET_log (GNUNET_ERROR_TYPE_INFO, _("Unsupported message of type %u (%u bytes) received from peer `%s'\n"), @@ -523,8 +520,8 @@ GSC_NEIGHBOURS_transmit (const struct GNUNET_PeerIdentity *target, me->deadline = GNUNET_TIME_relative_to_absolute (timeout); me->size = msize; GNUNET_memcpy (&me[1], - msg, - msize); + msg, + msize); GNUNET_CONTAINER_DLL_insert_tail (n->message_head, n->message_tail, me); -- 2.25.1