aboutsummaryrefslogtreecommitdiff
path: root/src/dht
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2018-05-21 18:10:38 +0200
committerChristian Grothoff <christian@grothoff.org>2018-05-21 18:10:38 +0200
commit61bf943d09cd43ca5fe9de1a8d329b808b0b194d (patch)
tree7676c015238a5b2d46b56af58bde4643913c3dd0 /src/dht
parent882a4ce1bb696d00abaa841ac88737765588cee9 (diff)
downloadgnunet-61bf943d09cd43ca5fe9de1a8d329b808b0b194d.tar.gz
gnunet-61bf943d09cd43ca5fe9de1a8d329b808b0b194d.zip
fix crash on unexpected client disconnect on incoming message, remove bogus assertion
Diffstat (limited to 'src/dht')
-rw-r--r--src/dht/plugin_block_dht.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/dht/plugin_block_dht.c b/src/dht/plugin_block_dht.c
index 24f8b21b2..9f2861b50 100644
--- a/src/dht/plugin_block_dht.c
+++ b/src/dht/plugin_block_dht.c
@@ -66,7 +66,8 @@ block_plugin_dht_create_group (void *cls,
66 guard = va_arg (va, const char *); 66 guard = va_arg (va, const char *);
67 if (0 == strcmp (guard, 67 if (0 == strcmp (guard,
68 "seen-set-size")) 68 "seen-set-size"))
69 bf_size = GNUNET_BLOCK_GROUP_compute_bloomfilter_size (va_arg (va, unsigned int), 69 bf_size = GNUNET_BLOCK_GROUP_compute_bloomfilter_size (va_arg (va,
70 unsigned int),
70 BLOOMFILTER_K); 71 BLOOMFILTER_K);
71 else if (0 == strcmp (guard, 72 else if (0 == strcmp (guard,
72 "filter-size")) 73 "filter-size"))
@@ -183,14 +184,17 @@ block_plugin_dht_get_key (void *cls,
183 return GNUNET_SYSERR; 184 return GNUNET_SYSERR;
184 if (block_size < sizeof (struct GNUNET_MessageHeader)) 185 if (block_size < sizeof (struct GNUNET_MessageHeader))
185 { 186 {
186 GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, "block-dht", 187 GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR,
187 _("Block not of type %u\n"), GNUNET_BLOCK_TYPE_DHT_HELLO); 188 "block-dht",
189 _("Block not of type %u\n"),
190 GNUNET_BLOCK_TYPE_DHT_HELLO);
188 return GNUNET_NO; 191 return GNUNET_NO;
189 } 192 }
190 msg = block; 193 msg = block;
191 if (block_size != ntohs (msg->size)) 194 if (block_size != ntohs (msg->size))
192 { 195 {
193 GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, "block-dht", 196 GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR,
197 "block-dht",
194 _("Size mismatch for block\n"), 198 _("Size mismatch for block\n"),
195 GNUNET_BLOCK_TYPE_DHT_HELLO); 199 GNUNET_BLOCK_TYPE_DHT_HELLO);
196 return GNUNET_NO; 200 return GNUNET_NO;
@@ -200,7 +204,8 @@ block_plugin_dht_get_key (void *cls,
200 pid = (struct GNUNET_PeerIdentity *) key; 204 pid = (struct GNUNET_PeerIdentity *) key;
201 if (GNUNET_OK != GNUNET_HELLO_get_id (hello, pid)) 205 if (GNUNET_OK != GNUNET_HELLO_get_id (hello, pid))
202 { 206 {
203 GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, "block-dht", 207 GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR,
208 "block-dht",
204 _("Block of type %u is malformed\n"), 209 _("Block of type %u is malformed\n"),
205 GNUNET_BLOCK_TYPE_DHT_HELLO); 210 GNUNET_BLOCK_TYPE_DHT_HELLO);
206 return GNUNET_NO; 211 return GNUNET_NO;