/*
This file is part of GNUnet.
- (C) 2012 Christian Grothoff (and other contributing authors)
+ Copyright (C) 2012 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
You should have received a copy of the GNU General Public License
along with GNUnet; see the file COPYING. If not, write to the
- Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
+ Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
*/
/**
* @file fs/gnunet-fs-profiler.c
- * @brief tool to benchmark/profile file-sharing
+ * @brief tool to benchmark/profile file-sharing
* @author Christian Grothoff
*/
#include "platform.h"
/**
* Handle to the task run during termination.
*/
-static GNUNET_SCHEDULER_TaskIdentifier terminate_taskid;
+static struct GNUNET_SCHEDULER_Task * terminate_taskid;
/**
/**
- * 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 = GNUNET_SCHEDULER_NO_TASK;
+ 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.
*
* failed
*/
static void
-test_master (void *cls,
+test_master (void *cls,
struct GNUNET_TESTBED_RunHandle *h,
unsigned int num_peers,
struct GNUNET_TESTBED_Peer **peers,
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);
}