/*
This file is part of GNUnet.
- Copyright (C) 2009-2014 Christian Grothoff (and other contributing authors)
+ Copyright (C) 2009-2014 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
* Task that periodically ages our cover traffic statistics.
*
* @param cls unused closure
- * @param tc task context
*/
static void
-age_cover_counters (void *cls,
- const struct GNUNET_SCHEDULER_TaskContext *tc)
+age_cover_counters (void *cls)
{
GSF_cover_content_count = (GSF_cover_content_count * 15) / 16;
GSF_cover_query_count = (GSF_cover_query_count * 15) / 16;
cover_age_task =
- GNUNET_SCHEDULER_add_delayed (COVER_AGE_FREQUENCY, &age_cover_counters,
+ GNUNET_SCHEDULER_add_delayed (COVER_AGE_FREQUENCY,
+ &age_cover_counters,
NULL);
}
{
if (GNUNET_BLOCK_EVALUATION_OK_LAST == result)
return; /* we're done... */
+ if (GNUNET_YES !=
+ GSF_pending_request_test_active_ (pr))
+ return; /* request is not actually active, skip! */
GSF_iterate_connected_peers_ (&consider_request_for_forwarding,
pr);
}
/**
- * Handle START_SEARCH-message (search request from client).
+ * Handle #GNUNET_MESSAGE_TYPE_FS_START_SEARCH-message (search request
+ * from client).
*
* @param cls closure
* @param client identification of the client
* Task run during shutdown.
*
* @param cls unused
- * @param tc unused
*/
static void
-shutdown_task (void *cls,
- const struct GNUNET_SCHEDULER_TaskContext *tc)
+shutdown_task (void *cls)
{
GSF_cadet_stop_client ();
GSF_cadet_stop_server ();
struct GSF_ConnectedPeer *cp = cls;
struct GNUNET_PeerIdentity pid;
+ if (GNUNET_YES !=
+ GSF_pending_request_test_active_ (pr))
+ return GNUNET_YES; /* request is not actually active, skip! */
GSF_connected_peer_get_identity_ (cp, &pid);
if (GNUNET_YES !=
GSF_pending_request_test_target_ (pr, &pid))
NULL);
GNUNET_SERVER_add_handlers (server, handlers);
cover_age_task =
- GNUNET_SCHEDULER_add_delayed (COVER_AGE_FREQUENCY, &age_cover_counters,
+ GNUNET_SCHEDULER_add_delayed (COVER_AGE_FREQUENCY,
+ &age_cover_counters,
NULL);
datastore_get_load = GNUNET_LOAD_value_init (DATASTORE_LOAD_AUTODECLINE);
GSF_cadet_start_server ();
GSF_cadet_start_client ();
- GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_FOREVER_REL, &shutdown_task,
- NULL);
+ GNUNET_SCHEDULER_add_shutdown (&shutdown_task,
+ NULL);
return GNUNET_OK;
}
(GNUNET_OK != main_init (server, cfg)))
{
GNUNET_SCHEDULER_shutdown ();
- shutdown_task (NULL, NULL);
+ shutdown_task (NULL);
return;
}
}