X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Fdht%2Fgnunet-service-dht_neighbours.h;h=b3b33e31839623afa303b4728d2ce9e489a753dc;hb=016f9c0b2e61c6dab0057a3b4618db5624badf51;hp=70723deac062acec04ca5826f8869abc2dcc8a24;hpb=1f6511d450641f20c69f616dbdbbbb1badbbbc5a;p=oweals%2Fgnunet.git diff --git a/src/dht/gnunet-service-dht_neighbours.h b/src/dht/gnunet-service-dht_neighbours.h index 70723deac..b3b33e318 100644 --- a/src/dht/gnunet-service-dht_neighbours.h +++ b/src/dht/gnunet-service-dht_neighbours.h @@ -27,6 +27,9 @@ #ifndef GNUNET_SERVICE_DHT_NEIGHBOURS_H #define GNUNET_SERVICE_DHT_NEIGHBOURS_H +#include "gnunet_util_lib.h" +#include "gnunet_block_lib.h" +#include "gnunet_dht_service.h" /** * Perform a PUT operation. Forwards the given request to other @@ -49,16 +52,15 @@ */ void GDS_NEIGHBOURS_handle_put (enum GNUNET_BLOCK_Type type, - enum GNUNET_DHT_RouteOption options, - uint32_t desired_replication_level, - GNUNET_TIME_Absolute expiration_time, - uint32_t hop_count, - struct GNUNET_CONTAINER_BloomFilter *bf, - const GNUNET_HashCode *key, - unsigned int put_path_length, - struct GNUNET_PeerIdentity *put_path, - const void *data, - size_t data_size); + enum GNUNET_DHT_RouteOption options, + uint32_t desired_replication_level, + struct GNUNET_TIME_Absolute expiration_time, + uint32_t hop_count, + struct GNUNET_CONTAINER_BloomFilter *bf, + const struct GNUNET_HashCode * key, + unsigned int put_path_length, + struct GNUNET_PeerIdentity *put_path, + const void *data, size_t data_size); /** @@ -76,19 +78,17 @@ GDS_NEIGHBOURS_handle_put (enum GNUNET_BLOCK_Type type, * @param xquery_size number of bytes in xquery * @param reply_bf bloomfilter to filter duplicates * @param reply_bf_mutator mutator for reply_bf - * @param peer_bf filter for peers not to select (again) + * @param peer_bf filter for peers not to select (again, updated) */ void GDS_NEIGHBOURS_handle_get (enum GNUNET_BLOCK_Type type, - enum GNUNET_DHT_RouteOption options, - uint32_t desired_replication_level, - uint32_t hop_count, - const GNUNET_HashCode *key, - const void *xquery, - size_t xquery_size, - const struct GNUNET_CONTAINER_BloomFilter *reply_bf, - uint32_t reply_bf_mutator, - const struct GNUNET_CONTAINER_BloomFilter *peer_bf); + enum GNUNET_DHT_RouteOption options, + uint32_t desired_replication_level, + uint32_t hop_count, const struct GNUNET_HashCode * key, + const void *xquery, size_t xquery_size, + const struct GNUNET_CONTAINER_BloomFilter *reply_bf, + uint32_t reply_bf_mutator, + struct GNUNET_CONTAINER_BloomFilter *peer_bf); /** @@ -108,24 +108,26 @@ GDS_NEIGHBOURS_handle_get (enum GNUNET_BLOCK_Type type, * @param data_size number of bytes in data */ void -GDS_NEIGHBOURS_handle_reply (const GNUNET_PeerIdentity *target, - enum GNUNET_BLOCK_Type 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_NEIGHBOURS_handle_reply (const struct GNUNET_PeerIdentity *target, + 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); /** * Initialize neighbours subsystem. + * + * @return GNUNET_OK on success, GNUNET_SYSERR on error */ -void +int GDS_NEIGHBOURS_init (void); + /** * Shutdown neighbours subsystem. */ @@ -133,4 +135,13 @@ void GDS_NEIGHBOURS_done (void); +/** + * Get the ID of the local node. + * + * @return identity of the local node + */ +struct GNUNET_PeerIdentity * +GDS_NEIGHBOURS_get_id (); + + #endif