MIN_MIGRATION_CONTENT_LIFETIME.rel_value)
{
/* content will expire soon, don't bother */
- GNUNET_DATASTORE_get_next (dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (dsh);
return;
}
if (type == GNUNET_BLOCK_TYPE_FS_ONDEMAND)
&process_migration_content,
NULL))
{
- GNUNET_DATASTORE_get_next (dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (dsh);
}
return;
}
GNUNET_CONTAINER_multihashmap_iterate (connected_peers,
&consider_migration,
mb);
- GNUNET_DATASTORE_get_next (dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (dsh);
}
dht_put_continuation (void *cls,
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
- GNUNET_DATASTORE_get_next (dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (dsh);
}
pr))
if (pr->qe != NULL)
{
- GNUNET_DATASTORE_get_next (dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (dsh);
}
return;
}
-1, -1,
GNUNET_TIME_UNIT_FOREVER_REL,
NULL, NULL);
- GNUNET_DATASTORE_get_next (dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (dsh);
return;
}
prq.type = type;
if (prq.eval == GNUNET_BLOCK_EVALUATION_OK_LAST)
{
pr->local_only = GNUNET_YES; /* do not forward */
- GNUNET_DATASTORE_get_next (dsh, GNUNET_NO);
+ GNUNET_DATASTORE_get_next (dsh);
return;
}
if ( (pr->client_request_list == NULL) &&
gettext_noop ("# processing result set cut short due to load"),
1,
GNUNET_NO);
- GNUNET_DATASTORE_get_next (dsh, GNUNET_NO);
+ GNUNET_DATASTORE_get_next (dsh);
return;
}
- GNUNET_DATASTORE_get_next (dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (dsh);
}
* @param expiration when does 'data' expire?
* @param data response data, NULL on request expiration
* @param data_len number of bytes in data
- * @param more GNUNET_YES if the request remains active (may call
- * this function again), GNUNET_NO if the request is
- * finished (client must not call GSF_pending_request_cancel_)
*/
static void
handle_p2p_reply (void *cls,
struct GSF_PendingRequest *pr,
struct GNUNET_TIME_Absolute expiration,
const void *data,
- size_t data_len,
- int more)
+ size_t data_len)
{
struct GSF_ConnectedPeer *cp = cls;
struct GSF_PendingRequestData *prd;
prd = GSF_pending_request_get_data_ (pr);
if (NULL == data)
{
- GNUNET_assert (GNUNET_NO == more);
GNUNET_STATISTICS_update (GSF_stats,
gettext_noop ("# P2P searches active"),
-1,
* @param expiration when does 'data' expire?
* @param data response data, NULL on request expiration
* @param data_len number of bytes in data
- * @param more GNUNET_YES if the request remains active (may call
- * this function again), GNUNET_NO if the request is
- * finished (client must not call GSF_pending_request_cancel_)
*/
static void
client_response_handler (void *cls,
struct GSF_PendingRequest *pr,
struct GNUNET_TIME_Absolute expiration,
const void *data,
- size_t data_len,
- int more)
+ size_t data_len)
{
struct ClientRequest *cr = cls;
struct GSF_LocalClient *lc;
{
/* ugh, request 'timed out' -- how can this be? */
GNUNET_break (0);
- GNUNET_assert (GNUNET_NO == more);
return;
}
GNUNET_STATISTICS_update (GSF_stats,
GNUNET_h2s (&prd->query),
(unsigned int) prd->type);
#endif
- if (GNUNET_NO == more)
- {
- GNUNET_CONTAINER_DLL_remove (lc->cr_head,
- lc->cr_tail,
- cr);
- GNUNET_SERVER_receive_done (lc->client,
- GNUNET_OK);
- GNUNET_STATISTICS_update (GSF_stats,
- gettext_noop ("# client searches active"),
- - 1,
- GNUNET_NO);
- GNUNET_free (cr);
- }
}
dpr->rh (dpr->rh_cls,
dpr,
GNUNET_TIME_UNIT_FOREVER_ABS,
- NULL, 0,
- GNUNET_SYSERR);
+ NULL, 0);
GSF_pending_request_cancel_ (dpr);
}
}
*/
enum GNUNET_BLOCK_EvaluationResult eval;
- /**
- * Did we finish processing the associated request?
- */
- int finished;
-
/**
* Did we find a matching request?
*/
pr->rh (pr->rh_cls,
pr,
prq->expiration,
- prq->data, prq->size,
- GNUNET_NO);
- /* destroy request, we're done */
- prq->finished = GNUNET_YES;
- GSF_pending_request_cancel_ (pr);
+ prq->data, prq->size);
return GNUNET_YES;
case GNUNET_BLOCK_EVALUATION_OK_DUPLICATE:
GNUNET_STATISTICS_update (GSF_stats,
pr->rh (pr->rh_cls,
pr,
prq->expiration,
- prq->data, prq->size,
- GNUNET_YES);
+ prq->data, prq->size);
return GNUNET_YES;
}
{
struct GSF_PendingRequest *pr = cls;
GSF_LocalLookupContinuation cont;
-
struct ProcessReplyClosure prq;
GNUNET_HashCode query;
unsigned int old_rf;
if (NULL == key)
{
+#if DEBUG_FS
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "No further local repsonses available.\n");
+#endif
pr->qe = NULL;
if (NULL != (cont = pr->llc_cont))
{
pr))
{
if (pr->qe != NULL)
- GNUNET_DATASTORE_get_next (GSF_dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (GSF_dsh);
}
return;
}
-1, -1,
GNUNET_TIME_UNIT_FOREVER_REL,
NULL, NULL);
- GNUNET_DATASTORE_get_next (GSF_dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (GSF_dsh);
return;
}
prq.type = type;
prq.priority = priority;
- prq.finished = GNUNET_NO;
prq.request_found = GNUNET_NO;
prq.anonymity_level = anonymity;
if ( (old_rf == 0) &&
(pr->public_data.results_found == 0) )
GSF_update_datastore_delay_ (pr->public_data.start_time);
process_reply (&prq, key, pr);
- if (prq.finished == GNUNET_YES)
- {
-#if DEBUG_FS
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Request processing finished, not asking datastore for more\n");
-#endif
- return;
- }
pr->local_result = prq.eval;
if (pr->qe == NULL)
{
"Request cancelled, not asking datastore for more\n");
#endif
}
- if (prq.eval == GNUNET_BLOCK_EVALUATION_OK_LAST)
- {
- GNUNET_DATASTORE_get_next (GSF_dsh, GNUNET_NO);
- return;
- }
if ( (0 == (GSF_PRO_PRIORITY_UNLIMITED & pr->public_data.options)) &&
( (GNUNET_YES == GSF_test_get_load_too_high_ (0)) ||
(pr->public_data.results_found > 5 + 2 * pr->public_data.priority) ) )
gettext_noop ("# processing result set cut short due to load"),
1,
GNUNET_NO);
- GNUNET_DATASTORE_get_next (GSF_dsh, GNUNET_NO);
+ GNUNET_DATASTORE_cancel (pr->qe);
+ pr->qe = NULL;
+ if (NULL != (cont = pr->llc_cont))
+ {
+ pr->llc_cont = NULL;
+ cont (pr->llc_cont_cls,
+ pr,
+ pr->local_result);
+ }
return;
}
- GNUNET_DATASTORE_get_next (GSF_dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (GSF_dsh);
}
prq.expiration = expiration;
prq.priority = 0;
prq.anonymity_level = 1;
- prq.finished = GNUNET_NO;
prq.request_found = GNUNET_NO;
GNUNET_CONTAINER_multihashmap_get_multiple (pr_map,
&query,
* @param expiration when does 'data' expire?
* @param data response data, NULL on request expiration
* @param data_len number of bytes in data
- * @param more GNUNET_YES if the request remains active (may call
- * this function again), GNUNET_NO if the request is
- * finished (client must not call GSF_pending_request_cancel_)
*/
typedef void (*GSF_PendingRequestReplyHandler)(void *cls,
struct GSF_PendingRequest *pr,
struct GNUNET_TIME_Absolute expiration,
const void *data,
- size_t data_len,
- int more);
+ size_t data_len);
/**
MIN_MIGRATION_CONTENT_LIFETIME.rel_value)
{
/* content will expire soon, don't bother */
- GNUNET_DATASTORE_get_next (GSF_dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (GSF_dsh);
return;
}
if (type == GNUNET_BLOCK_TYPE_FS_ONDEMAND)
&process_migration_content,
NULL))
{
- GNUNET_DATASTORE_get_next (GSF_dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (GSF_dsh);
}
return;
}
}
pos = pos->next;
}
- GNUNET_DATASTORE_get_next (GSF_dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (GSF_dsh);
}
dht_put_continuation (void *cls,
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
- GNUNET_DATASTORE_get_next (GSF_dsh, GNUNET_YES);
+ GNUNET_DATASTORE_get_next (GSF_dsh);
}