X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Fdht%2Fgnunet-service-dht_routing.h;h=ad7958363a67824d1fa3ac98bb453d46c29395ee;hb=79fb947eb8fba243ea65e19b40b65e04f8806865;hp=3ddfcc66e7b7c13e0723cf861c6b793860bb4e59;hpb=1f6511d450641f20c69f616dbdbbbb1badbbbc5a;p=oweals%2Fgnunet.git diff --git a/src/dht/gnunet-service-dht_routing.h b/src/dht/gnunet-service-dht_routing.h index 3ddfcc66e..ad7958363 100644 --- a/src/dht/gnunet-service-dht_routing.h +++ b/src/dht/gnunet-service-dht_routing.h @@ -1,6 +1,6 @@ /* This file is part of GNUnet. - (C) 2011 Christian Grothoff (and other contributing authors) + Copyright (C) 2011 GNUnet e.V. GNUnet is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published @@ -14,8 +14,8 @@ You should have received a copy of the GNU General Public License along with GNUnet; see the file COPYING. If not, write to the - Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ /** @@ -26,34 +26,38 @@ #ifndef GNUNET_SERVICE_DHT_ROUTING_H #define GNUNET_SERVICE_DHT_ROUTING_H +#include "gnunet_util_lib.h" +#include "gnunet_block_lib.h" +#include "gnunet_dht_service.h" + /** * Handle a reply (route to origin). Only forwards the reply back to * other peers waiting for it. Does not do local caching or * forwarding to local clients. Essentially calls - * GDS_NEIGHBOURS_handle_reply for all peers that sent us a matching + * #GDS_NEIGHBOURS_handle_reply() for all peers that sent us a matching * request recently. * * @param type type of the block * @param expiration_time when does the content expire * @param key key for the content - * @param put_path_length number of entries in put_path + * @param put_path_length number of entries in @a put_path * @param put_path peers the original PUT traversed (if tracked) - * @param get_path_length number of entries in put_path + * @param get_path_length number of entries in @a get_path * @param get_path peers this reply has traversed so far (if tracked) * @param data payload of the reply - * @param data_size number of bytes in data + * @param data_size number of bytes in @a data */ void -GDS_ROUTING_process (uint32_t type, - GNUNET_TIME_Absolute expiration_time, - const GNUNET_HashCode *key, - unsigned int put_path_length, - struct GNUNET_PeerIdentity *put_path, - unsigned int get_path_length, - struct GNUNET_PeerIdentity *get_path, - const void *data, - size_t data_size); +GDS_ROUTING_process (enum GNUNET_BLOCK_Type type, + struct GNUNET_TIME_Absolute expiration_time, + const struct GNUNET_HashCode *key, + unsigned int put_path_length, + const struct GNUNET_PeerIdentity *put_path, + unsigned int get_path_length, + const struct GNUNET_PeerIdentity *get_path, + const void *data, + size_t data_size); /** @@ -61,20 +65,20 @@ GDS_ROUTING_process (uint32_t type, * * @param sender peer that originated the request * @param type type of the block + * @param bg block group to evaluate replies, henceforth owned by routing + * @param options options for processing * @param key key for the content * @param xquery extended query - * @param xquery_size number of bytes in xquery - * @param reply_bf bloomfilter to filter duplicates - * @param reply_bf_mutator mutator for reply_bf -*/ + * @param xquery_size number of bytes in @a xquery + */ void -GDS_ROUTING_add (const GNUNET_PeerIdentity *sender, - uint32_t type, - const GNUNET_HashCode *key, - const void *xquery, - size_t xquery_size, - const struct GNUNET_CONTAINER_BloomFilter *reply_bf, - uint32_t reply_bf_mutator); +GDS_ROUTING_add (const struct GNUNET_PeerIdentity *sender, + enum GNUNET_BLOCK_Type type, + struct GNUNET_BLOCK_Group *bg, + enum GNUNET_DHT_RouteOption options, + const struct GNUNET_HashCode * key, + const void *xquery, + size_t xquery_size); /**