aboutsummaryrefslogtreecommitdiff
path: root/src/dht/gnunet-service-dht.c
diff options
context:
space:
mode:
authorNathan S. Evans <evans@in.tum.de>2010-12-08 13:25:09 +0000
committerNathan S. Evans <evans@in.tum.de>2010-12-08 13:25:09 +0000
commitf5869c466fc7a1b321461e616d918484fe4f1f3b (patch)
treefc750749f80f4ded7a4423f8da4ca37e4792affb /src/dht/gnunet-service-dht.c
parent4488723b6053c9afeb4e90c851e156020f1a2a22 (diff)
downloadgnunet-f5869c466fc7a1b321461e616d918484fe4f1f3b.tar.gz
gnunet-f5869c466fc7a1b321461e616d918484fe4f1f3b.zip
Always log local request starts, even if malicious
Diffstat (limited to 'src/dht/gnunet-service-dht.c')
-rw-r--r--src/dht/gnunet-service-dht.c39
1 files changed, 31 insertions, 8 deletions
diff --git a/src/dht/gnunet-service-dht.c b/src/dht/gnunet-service-dht.c
index e3eed09e9..df7c28024 100644
--- a/src/dht/gnunet-service-dht.c
+++ b/src/dht/gnunet-service-dht.c
@@ -2333,8 +2333,8 @@ handle_dht_get (const struct GNUNET_MessageHeader *msg,
2333 else 2333 else
2334 { 2334 {
2335 msg_ctx->reply_bf = GNUNET_CONTAINER_bloomfilter_init (end, 2335 msg_ctx->reply_bf = GNUNET_CONTAINER_bloomfilter_init (end,
2336 bf_size, 2336 bf_size,
2337 GNUNET_DHT_GET_BLOOMFILTER_K); 2337 GNUNET_DHT_GET_BLOOMFILTER_K);
2338 } 2338 }
2339 type = (enum GNUNET_BLOCK_Type) ntohl (get_msg->type); 2339 type = (enum GNUNET_BLOCK_Type) ntohl (get_msg->type);
2340#if DEBUG_DHT 2340#if DEBUG_DHT
@@ -4145,11 +4145,6 @@ handle_dht_local_route_request (void *cls, struct GNUNET_SERVER_Client *client,
4145 dhtlog_handle->insert_dhtkey (NULL, &dht_msg->key); 4145 dhtlog_handle->insert_dhtkey (NULL, &dht_msg->key);
4146#endif 4146#endif
4147 4147
4148 if (GNUNET_YES == malicious_dropper)
4149 {
4150 GNUNET_SERVER_receive_done (client, GNUNET_OK);
4151 return;
4152 }
4153 memset(&msg_ctx, 0, sizeof(struct DHT_MessageContext)); 4148 memset(&msg_ctx, 0, sizeof(struct DHT_MessageContext));
4154 msg_ctx.client = find_active_client (client); 4149 msg_ctx.client = find_active_client (client);
4155 memcpy(&msg_ctx.key, &dht_msg->key, sizeof(GNUNET_HashCode)); 4150 memcpy(&msg_ctx.key, &dht_msg->key, sizeof(GNUNET_HashCode));
@@ -4160,6 +4155,7 @@ handle_dht_local_route_request (void *cls, struct GNUNET_SERVER_Client *client,
4160 msg_ctx.peer = &my_identity; 4155 msg_ctx.peer = &my_identity;
4161 msg_ctx.importance = DHT_DEFAULT_P2P_IMPORTANCE + 4; /* Make local routing a higher priority */ 4156 msg_ctx.importance = DHT_DEFAULT_P2P_IMPORTANCE + 4; /* Make local routing a higher priority */
4162 msg_ctx.timeout = DHT_DEFAULT_P2P_TIMEOUT; 4157 msg_ctx.timeout = DHT_DEFAULT_P2P_TIMEOUT;
4158
4163 if (ntohs(enc_msg->type) == GNUNET_MESSAGE_TYPE_DHT_GET) 4159 if (ntohs(enc_msg->type) == GNUNET_MESSAGE_TYPE_DHT_GET)
4164 increment_stats(STAT_GET_START); 4160 increment_stats(STAT_GET_START);
4165 else if (ntohs(enc_msg->type) == GNUNET_MESSAGE_TYPE_DHT_PUT) 4161 else if (ntohs(enc_msg->type) == GNUNET_MESSAGE_TYPE_DHT_PUT)
@@ -4167,8 +4163,35 @@ handle_dht_local_route_request (void *cls, struct GNUNET_SERVER_Client *client,
4167 else if (ntohs(enc_msg->type) == GNUNET_MESSAGE_TYPE_DHT_FIND_PEER) 4163 else if (ntohs(enc_msg->type) == GNUNET_MESSAGE_TYPE_DHT_FIND_PEER)
4168 increment_stats(STAT_FIND_PEER_START); 4164 increment_stats(STAT_FIND_PEER_START);
4169 4165
4170 demultiplex_message(enc_msg, &msg_ctx); 4166 if (GNUNET_YES == malicious_dropper)
4167 {
4168 if (ntohs(enc_msg->type) == GNUNET_MESSAGE_TYPE_DHT_GET)
4169 {
4170#if DEBUG_DHT_ROUTING
4171 if ((debug_routes) && (dhtlog_handle != NULL))
4172 {
4173 dhtlog_handle->insert_query (NULL, msg_ctx.unique_id, DHTLOG_GET,
4174 msg_ctx.hop_count, GNUNET_NO, &my_identity,
4175 &msg_ctx.key);
4176 }
4177#endif
4178 }
4179 else if (ntohs(enc_msg->type) == GNUNET_MESSAGE_TYPE_DHT_PUT)
4180 {
4181#if DEBUG_DHT_ROUTING
4182 if ((debug_routes) && (dhtlog_handle != NULL))
4183 {
4184 dhtlog_handle->insert_query (NULL, msg_ctx.unique_id, DHTLOG_PUT,
4185 msg_ctx.hop_count, GNUNET_NO, &my_identity,
4186 &msg_ctx.key);
4187 }
4188#endif
4189 }
4190 GNUNET_SERVER_receive_done (client, GNUNET_OK);
4191 return;
4192 }
4171 4193
4194 demultiplex_message(enc_msg, &msg_ctx);
4172 GNUNET_SERVER_receive_done (client, GNUNET_OK); 4195 GNUNET_SERVER_receive_done (client, GNUNET_OK);
4173 4196
4174} 4197}