/**
- * Task run on timeout to terminate. Triggers printing out
+ * Task run on shutdown to terminate. Triggers printing out
* all statistics.
*
* @param cls NULL
- * @param tc unused
*/
static void
-terminate_task (void *cls,
- const struct GNUNET_SCHEDULER_TaskContext *tc)
+terminate_task (void *cls)
{
- terminate_taskid = NULL;
+ if (NULL != terminate_taskid)
+ {
+ GNUNET_SCHEDULER_cancel (terminate_taskid);
+ terminate_taskid = NULL;
+ }
GNUNET_TESTBED_get_statistics (0, NULL,
NULL, NULL,
&process_stats,
}
+/**
+ * Task run on timeout to terminate. Triggers printing out
+ * all statistics.
+ *
+ * @param cls NULL
+ */
+static void
+timeout_task (void *cls)
+{
+ terminate_taskid = NULL;
+ GNUNET_SCHEDULER_shutdown ();
+}
+
+
/**
* Signature of a main function for a testcase.
*
if (0 != timeout.rel_value_us)
terminate_taskid = GNUNET_SCHEDULER_add_delayed (timeout,
- &terminate_task, NULL);
- else
- terminate_taskid = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_FOREVER_REL,
- &terminate_task,
+ &timeout_task,
NULL);
+ GNUNET_SCHEDULER_add_shutdown (&terminate_task,
+ NULL);
}