gnunet

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

commit 28bfcbd6364765feaba442c28e0be413607e9afb
parent 11b80a8098a5a83041fc03accd98a8d52f2e1f30
Author: Christian Grothoff <grothoff@gnunet.org>
Date:   Sat, 12 Mar 2022 23:39:22 +0100

-add sanity check on local inputs, fix assertion

Diffstat:
Msrc/dht/gnunet-service-dht_clients.c | 9+++++++++
Msrc/dht/plugin_block_dht.c | 2+-
2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/dht/gnunet-service-dht_clients.c b/src/dht/gnunet-service-dht_clients.c @@ -510,6 +510,15 @@ handle_dht_local_put (void *cls, (unsigned long) (size - sizeof(struct GNUNET_DHT_ClientPutMessage)), GNUNET_h2s (&dht_msg->key), (unsigned int) bd.type); + if (GNUNET_OK != + GNUNET_BLOCK_check_block (GDS_block_context, + bd.type, + bd.data, + bd.data_size)) + { + GNUNET_break (0); + return; + } GNUNET_STATISTICS_update (GDS_stats, "# PUT requests received from clients", 1, diff --git a/src/dht/plugin_block_dht.c b/src/dht/plugin_block_dht.c @@ -240,7 +240,7 @@ block_plugin_dht_check_reply ( GNUNET_assert (reply_block_size >= sizeof(struct GNUNET_MessageHeader)); GNUNET_assert (reply_block_size == ntohs (msg->size)); - GNUNET_assert (GNUNET_OK != + GNUNET_assert (GNUNET_OK == GNUNET_HELLO_get_id (hello, &pid)); GNUNET_CRYPTO_hash (&pid,