26 #ifndef GNUNET_SERVICE_DHT_H 27 #define GNUNET_SERVICE_DHT_H 34 #define DEBUG_DHT GNUNET_EXTRA_LOGGING 80 unsigned int get_path_length,
82 unsigned int put_path_length,
105 uint32_t desired_replication_level,
106 unsigned int path_length,
128 unsigned int get_path_length,
130 unsigned int put_path_length,
156 uint32_t desired_replication_level,
157 unsigned int path_length,
struct GNUNET_STATISTICS_Handle * GDS_stats
Handle for the statistics service.
Handle to an initialized block library.
struct GNUNET_GETOPT_CommandLineOption options[]
GNUNET_BLOCK_Type
Blocks in the datastore and the datacache must have a unique type.
static size_t data_size
Number of bytes in data.
struct GNUNET_SERVICE_Handle * GDS_service
Handle for the service.
void GDS_CLIENTS_process_get(uint32_t options, enum GNUNET_BLOCK_Type type, uint32_t hop_count, uint32_t desired_replication_level, unsigned int path_length, const struct GNUNET_PeerIdentity *path, const struct GNUNET_HashCode *key)
Check if some client is monitoring GET messages and notify them in that case.
void GDS_CLIENTS_process_put(uint32_t options, enum GNUNET_BLOCK_Type type, uint32_t hop_count, uint32_t desired_replication_level, unsigned int path_length, const struct GNUNET_PeerIdentity *path, struct GNUNET_TIME_Absolute exp, const struct GNUNET_HashCode *key, const void *data, size_t size)
Check if some client is monitoring PUT messages and notify them in that case.
struct GNUNET_BLOCK_Context * GDS_block_context
Our handle to the BLOCK library.
struct GNUNET_MessageHeader * GDS_my_hello
Our HELLO.
void GDS_CLIENTS_process_get_resp(enum GNUNET_BLOCK_Type type, const struct GNUNET_PeerIdentity *get_path, unsigned int get_path_length, const struct GNUNET_PeerIdentity *put_path, unsigned int put_path_length, struct GNUNET_TIME_Absolute exp, const struct GNUNET_HashCode *key, const void *data, size_t size)
Check if some client is monitoring GET RESP messages and notify them in that case.
static char * expiration
Credential TTL.
struct GNUNET_HashCode key
The key used in the DHT.
static unsigned int size
Size of the "table".
The identity of the host (wraps the signing key of the peer).
enum GNUNET_TESTBED_UnderlayLinkModelType type
the type of this model
Time for absolute times used by GNUnet, in microseconds.
const struct GNUNET_CONFIGURATION_Handle * GDS_cfg
Configuration we use.
uint32_t data
The data value.
void GDS_CLIENTS_handle_reply(struct GNUNET_TIME_Absolute expiration, const struct GNUNET_HashCode *key, unsigned int get_path_length, const struct GNUNET_PeerIdentity *get_path, unsigned int put_path_length, const struct GNUNET_PeerIdentity *put_path, enum GNUNET_BLOCK_Type type, size_t data_size, const void *data)
Handle a reply we've received from another peer.