X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Finclude%2Fgnunet_datastore_service.h;h=b4af0e6fd2d59fb1040112ed099556fe459af9ff;hb=66ffc809472f27d69b9ad7361f8ba29c2674f716;hp=58c730aba16e8975ec5e1624c46140287c870983;hpb=502af2167f7c218366666ca4944bd7cc54b5b19a;p=oweals%2Fgnunet.git diff --git a/src/include/gnunet_datastore_service.h b/src/include/gnunet_datastore_service.h index 58c730aba..b4af0e6fd 100644 --- a/src/include/gnunet_datastore_service.h +++ b/src/include/gnunet_datastore_service.h @@ -63,9 +63,8 @@ struct GNUNET_DATASTORE_Handle; * @param cfg configuration to use * @return handle to use to access the service */ -struct GNUNET_DATASTORE_Handle *GNUNET_DATASTORE_connect (const struct - GNUNET_CONFIGURATION_Handle - *cfg); +struct GNUNET_DATASTORE_Handle * +GNUNET_DATASTORE_connect (const struct GNUNET_CONFIGURATION_Handle *cfg); /** @@ -75,7 +74,8 @@ struct GNUNET_DATASTORE_Handle *GNUNET_DATASTORE_connect (const struct * @param h handle to the datastore * @param drop set to GNUNET_YES to delete all data in datastore (!) */ -void GNUNET_DATASTORE_disconnect (struct GNUNET_DATASTORE_Handle *h, int drop); +void +GNUNET_DATASTORE_disconnect (struct GNUNET_DATASTORE_Handle *h, int drop); /** @@ -86,10 +86,14 @@ void GNUNET_DATASTORE_disconnect (struct GNUNET_DATASTORE_Handle *h, int drop); * @param success GNUNET_SYSERR on failure (including timeout/queue drop) * GNUNET_NO if content was already there * GNUNET_YES (or other positive value) on success + * @param min_expiration minimum expiration time required for 0-priority content to be stored + * by the datacache at this time, zero for unknown, forever if we have no + * space for 0-priority content * @param msg NULL on success, otherwise an error message */ typedef void (*GNUNET_DATASTORE_ContinuationWithStatus) (void *cls, int32_t success, + struct GNUNET_TIME_Absolute min_expiration, const char *msg); @@ -112,21 +116,13 @@ typedef void (*GNUNET_DATASTORE_ContinuationWithStatus) (void *cls, * cancel; note that even if NULL is returned, the callback will be invoked * (or rather, will already have been invoked) */ -struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_reserve (struct - GNUNET_DATASTORE_Handle - *h, - uint64_t amount, - uint32_t entries, - unsigned int - queue_priority, - unsigned int - max_queue_size, - struct - GNUNET_TIME_Relative - timeout, - GNUNET_DATASTORE_ContinuationWithStatus - cont, - void *cont_cls); +struct GNUNET_DATASTORE_QueueEntry * +GNUNET_DATASTORE_reserve (struct GNUNET_DATASTORE_Handle *h, uint64_t amount, + uint32_t entries, unsigned int queue_priority, + unsigned int max_queue_size, + struct GNUNET_TIME_Relative timeout, + GNUNET_DATASTORE_ContinuationWithStatus cont, + void *cont_cls); /** @@ -155,29 +151,17 @@ struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_reserve (struct * cancel; note that even if NULL is returned, the callback will be invoked * (or rather, will already have been invoked) */ -struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_put (struct - GNUNET_DATASTORE_Handle - *h, uint32_t rid, - const GNUNET_HashCode - * key, size_t size, - const void *data, - enum GNUNET_BLOCK_Type - type, - uint32_t priority, - uint32_t anonymity, - uint32_t replication, - struct - GNUNET_TIME_Absolute - expiration, - unsigned int - queue_priority, - unsigned int - max_queue_size, - struct - GNUNET_TIME_Relative - timeout, - GNUNET_DATASTORE_ContinuationWithStatus - cont, void *cont_cls); +struct GNUNET_DATASTORE_QueueEntry * +GNUNET_DATASTORE_put (struct GNUNET_DATASTORE_Handle *h, uint32_t rid, + const GNUNET_HashCode * key, size_t size, + const void *data, enum GNUNET_BLOCK_Type type, + uint32_t priority, uint32_t anonymity, + uint32_t replication, + struct GNUNET_TIME_Absolute expiration, + unsigned int queue_priority, unsigned int max_queue_size, + struct GNUNET_TIME_Relative timeout, + GNUNET_DATASTORE_ContinuationWithStatus cont, + void *cont_cls); /** @@ -201,24 +185,13 @@ struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_put (struct * cancel; note that even if NULL is returned, the callback will be invoked * (or rather, will already have been invoked) */ -struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_release_reserve (struct - GNUNET_DATASTORE_Handle - *h, - uint32_t - rid, - unsigned - int - queue_priority, - unsigned - int - max_queue_size, - struct - GNUNET_TIME_Relative - timeout, - GNUNET_DATASTORE_ContinuationWithStatus - cont, - void - *cont_cls); +struct GNUNET_DATASTORE_QueueEntry * +GNUNET_DATASTORE_release_reserve (struct GNUNET_DATASTORE_Handle *h, + uint32_t rid, unsigned int queue_priority, + unsigned int max_queue_size, + struct GNUNET_TIME_Relative timeout, + GNUNET_DATASTORE_ContinuationWithStatus cont, + void *cont_cls); /** @@ -238,23 +211,15 @@ struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_release_reserve (struct * cancel; note that even if NULL is returned, the callback will be invoked * (or rather, will already have been invoked) */ -struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_update (struct - GNUNET_DATASTORE_Handle - *h, uint64_t uid, - uint32_t priority, - struct - GNUNET_TIME_Absolute - expiration, - unsigned int - queue_priority, - unsigned int - max_queue_size, - struct - GNUNET_TIME_Relative - timeout, - GNUNET_DATASTORE_ContinuationWithStatus - cont, - void *cont_cls); +struct GNUNET_DATASTORE_QueueEntry * +GNUNET_DATASTORE_update (struct GNUNET_DATASTORE_Handle *h, uint64_t uid, + uint32_t priority, + struct GNUNET_TIME_Absolute expiration, + unsigned int queue_priority, + unsigned int max_queue_size, + struct GNUNET_TIME_Relative timeout, + GNUNET_DATASTORE_ContinuationWithStatus cont, + void *cont_cls); /** @@ -278,23 +243,14 @@ struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_update (struct * cancel; note that even if NULL is returned, the callback will be invoked * (or rather, will already have been invoked) */ -struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_remove (struct - GNUNET_DATASTORE_Handle - *h, - const - GNUNET_HashCode * - key, size_t size, - const void *data, - unsigned int - queue_priority, - unsigned int - max_queue_size, - struct - GNUNET_TIME_Relative - timeout, - GNUNET_DATASTORE_ContinuationWithStatus - cont, - void *cont_cls); +struct GNUNET_DATASTORE_QueueEntry * +GNUNET_DATASTORE_remove (struct GNUNET_DATASTORE_Handle *h, + const GNUNET_HashCode * key, size_t size, + const void *data, unsigned int queue_priority, + unsigned int max_queue_size, + struct GNUNET_TIME_Relative timeout, + GNUNET_DATASTORE_ContinuationWithStatus cont, + void *cont_cls); /** @@ -313,8 +269,7 @@ struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_remove (struct */ typedef void (*GNUNET_DATASTORE_DatumProcessor) (void *cls, const GNUNET_HashCode * key, - size_t size, - const void *data, + size_t size, const void *data, enum GNUNET_BLOCK_Type type, uint32_t priority, uint32_t anonymity, @@ -343,26 +298,14 @@ typedef void (*GNUNET_DATASTORE_DatumProcessor) (void *cls, * @return NULL if the entry was not queued, otherwise a handle that can be used to * cancel */ -struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_get_key (struct - GNUNET_DATASTORE_Handle - *h, - uint64_t offset, - const - GNUNET_HashCode * - key, - enum - GNUNET_BLOCK_Type - type, - unsigned int - queue_priority, - unsigned int - max_queue_size, - struct - GNUNET_TIME_Relative - timeout, - GNUNET_DATASTORE_DatumProcessor - proc, - void *proc_cls); +struct GNUNET_DATASTORE_QueueEntry * +GNUNET_DATASTORE_get_key (struct GNUNET_DATASTORE_Handle *h, uint64_t offset, + const GNUNET_HashCode * key, + enum GNUNET_BLOCK_Type type, + unsigned int queue_priority, + unsigned int max_queue_size, + struct GNUNET_TIME_Relative timeout, + GNUNET_DATASTORE_DatumProcessor proc, void *proc_cls); /** @@ -389,27 +332,15 @@ struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_get_key (struct * @return NULL if the entry was not queued, otherwise a handle that can be used to * cancel */ -struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_get_zero_anonymity (struct - GNUNET_DATASTORE_Handle - *h, - uint64_t - offset, - unsigned - int - queue_priority, - unsigned - int - max_queue_size, - struct - GNUNET_TIME_Relative - timeout, - enum - GNUNET_BLOCK_Type - type, - GNUNET_DATASTORE_DatumProcessor - proc, - void - *proc_cls); +struct GNUNET_DATASTORE_QueueEntry * +GNUNET_DATASTORE_get_zero_anonymity (struct GNUNET_DATASTORE_Handle *h, + uint64_t offset, + unsigned int queue_priority, + unsigned int max_queue_size, + struct GNUNET_TIME_Relative timeout, + enum GNUNET_BLOCK_Type type, + GNUNET_DATASTORE_DatumProcessor proc, + void *proc_cls); /** @@ -431,32 +362,24 @@ struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_get_zero_anonymity (struct * @return NULL if the entry was not queued, otherwise a handle that can be used to * cancel */ -struct GNUNET_DATASTORE_QueueEntry *GNUNET_DATASTORE_get_for_replication (struct - GNUNET_DATASTORE_Handle - *h, - unsigned - int - queue_priority, - unsigned - int - max_queue_size, - struct - GNUNET_TIME_Relative - timeout, - GNUNET_DATASTORE_DatumProcessor - proc, - void - *proc_cls); +struct GNUNET_DATASTORE_QueueEntry * +GNUNET_DATASTORE_get_for_replication (struct GNUNET_DATASTORE_Handle *h, + unsigned int queue_priority, + unsigned int max_queue_size, + struct GNUNET_TIME_Relative timeout, + GNUNET_DATASTORE_DatumProcessor proc, + void *proc_cls); /** * Cancel a datastore operation. The final callback from the * operation must not have been done yet. - * + * * @param qe operation to cancel */ -void GNUNET_DATASTORE_cancel (struct GNUNET_DATASTORE_QueueEntry *qe); +void +GNUNET_DATASTORE_cancel (struct GNUNET_DATASTORE_QueueEntry *qe); #if 0 /* keep Emacsens' auto-indent happy */