/*
This file is part of GNUnet
- (C) 2008--2013 Christian Grothoff (and other contributing authors)
+ Copyright (C) 2008--2013 Christian Grothoff (and other contributing authors)
GNUnet is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
/**
* Host registration task
*/
- GNUNET_SCHEDULER_TaskIdentifier register_hosts_task;
+ struct GNUNET_SCHEDULER_Task * register_hosts_task;
/**
* Task to be run of a timeout
*/
- GNUNET_SCHEDULER_TaskIdentifier timeout_task;
+ struct GNUNET_SCHEDULER_Task * timeout_task;
/**
* Task run upon shutdown interrupts
*/
- GNUNET_SCHEDULER_TaskIdentifier interrupt_task;
+ struct GNUNET_SCHEDULER_Task * interrupt_task;
/**
* The event mask for the controller
*/
static uint32_t
rcop_key (void *rcop)
-{
+{
return * ((uint32_t *) &rcop);
}
search_rcop (struct GNUNET_TESTBED_RunHandle *rc, struct GNUNET_TESTBED_Operation *op)
{
struct SearchContext sc;
-
+
sc.query = op;
sc.result = NULL;
- if (GNUNET_SYSERR ==
+ if (GNUNET_SYSERR ==
GNUNET_CONTAINER_multihashmap32_get_multiple (rc->rcop_map,
rcop_key (op),
&search_iterator,
/**
* Assuming all peers have been destroyed cleanup run handle
*
- * @param cls the run handle
+ * @param rc the run context
*/
static void
-cleanup (void *cls)
+cleanup (struct GNUNET_TESTBED_RunHandle *rc)
{
- struct GNUNET_TESTBED_RunHandle *rc = cls;
unsigned int hid;
- GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == rc->register_hosts_task);
+ GNUNET_assert (NULL == rc->register_hosts_task);
GNUNET_assert (NULL == rc->reg_handle);
GNUNET_assert (NULL == rc->peers);
GNUNET_assert (NULL == rc->hclist);
/**
- * Iterator for cleaning up elements from rcop_map
+ * Iterator for cleaning up elements from rcop_map
*
* @param cls the RunContext
* @param key the 32-bit key
rc->hclist = NULL;
}
/* Stop register hosts task if it is running */
- if (GNUNET_SCHEDULER_NO_TASK != rc->register_hosts_task)
+ if (NULL != rc->register_hosts_task)
{
GNUNET_SCHEDULER_cancel (rc->register_hosts_task);
- rc->register_hosts_task = GNUNET_SCHEDULER_NO_TASK;
+ rc->register_hosts_task = NULL;
}
- if (GNUNET_SCHEDULER_NO_TASK != rc->timeout_task)
+ if (NULL != rc->timeout_task)
{
GNUNET_SCHEDULER_cancel (rc->timeout_task);
- rc->timeout_task = GNUNET_SCHEDULER_NO_TASK;
+ rc->timeout_task = NULL;
}
if (NULL != rc->reg_handle)
{
rc->topology_operation = NULL;
}
/* cancel any exiting operations */
- GNUNET_assert (GNUNET_SYSERR !=
+ GNUNET_assert (GNUNET_SYSERR !=
GNUNET_CONTAINER_multihashmap32_iterate (rc->rcop_map,
&rcop_cleanup_iterator,
rc));
cancel_interrupt_task (struct GNUNET_TESTBED_RunHandle *rc)
{
GNUNET_SCHEDULER_cancel (rc->interrupt_task);
- rc->interrupt_task = GNUNET_SCHEDULER_NO_TASK;
+ rc->interrupt_task = NULL;
}
/**
* This callback will be called when all the operations are completed
- * (done/cancelled)
+ * (done/cancelled)
*
* @param cls run context
*/
if (NULL == rc->peers)
goto cleanup_;
rc->shutdown = GNUNET_YES;
- rcop = GNUNET_malloc (sizeof (struct RunContextOperation));
+ rcop = GNUNET_new (struct RunContextOperation);
rcop->rc = rc;
rcop->op = GNUNET_TESTBED_shutdown_peers (rc->c, rcop, NULL, NULL);
GNUNET_assert (NULL != rcop->op);
/* reschedule */
rc->interrupt_task = GNUNET_SCHEDULER_add_delayed
(GNUNET_TIME_UNIT_FOREVER_REL, &interrupt, rc);
- rc_cleanup_operations (rc);
+ rc_cleanup_operations (rc);
if ( (GNUNET_NO == rc->shutdown)
- && (NULL != c)
+ && (NULL != c)
&& (0 != (size = GNUNET_CONTAINER_multihashmap32_size (c->opc_map))))
{
LOG (GNUNET_ERROR_TYPE_WARNING, "Shutdown postponed as there are "
rc->pstart_time = GNUNET_TIME_absolute_get ();
for (peer = 0; peer < rc->num_peers; peer++)
{
- rcop = GNUNET_malloc (sizeof (struct RunContextOperation));
+ rcop = GNUNET_new (struct RunContextOperation);
rcop->rc = rc;
rcop->op = GNUNET_TESTBED_peer_start (NULL, rc->peers[peer], NULL, NULL);
GNUNET_assert (NULL != rcop->op);
call_master (struct GNUNET_TESTBED_RunHandle *rc)
{
GNUNET_SCHEDULER_cancel (rc->timeout_task);
- rc->timeout_task = GNUNET_SCHEDULER_NO_TASK;
+ rc->timeout_task = NULL;
if (NULL != rc->test_master)
rc->test_master (rc->test_master_cls, rc, rc->num_peers, rc->peers,
rc->links_succeeded, rc->links_failed);
rc->peer_count = 0;
for (peer = 0; peer < rc->num_peers; peer++)
{
- rcop = GNUNET_malloc (sizeof (struct RunContextOperation));
+ rcop = GNUNET_new (struct RunContextOperation);
rcop->rc = rc;
rcop->op =
GNUNET_TESTBED_peer_create (rc->c,
{
unsigned long long number;
unsigned int cap;
- GNUNET_assert (GNUNET_OK ==
+ GNUNET_assert (GNUNET_OK ==
GNUNET_CONFIGURATION_get_value_number (rc->cfg, TESTBED_CONFIG_SECTION,
SCALE_FREE_CAP,
&number));
struct RunContextOperation *rcop;
unsigned int slave;
- rc->register_hosts_task = GNUNET_SCHEDULER_NO_TASK;
+ rc->register_hosts_task = NULL;
if (rc->reg_hosts == rc->num_hosts)
{
DEBUG ("All hosts successfully registered\n");
/* Start slaves */
for (slave = 0; slave < rc->num_hosts; slave++)
{
- rcop = GNUNET_malloc (sizeof (struct RunContextOperation));
+ rcop = GNUNET_new (struct RunContextOperation);
rcop->rc = rc;
rcop->op =
GNUNET_TESTBED_controller_link (rcop, rc->c, rc->hosts[slave],
timeout_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct GNUNET_TESTBED_RunHandle *rc = cls;
-
- rc->timeout_task = GNUNET_SCHEDULER_NO_TASK;
+
+ rc->timeout_task = NULL;
LOG (GNUNET_ERROR_TYPE_ERROR, _("Shutting down testbed due to timeout while setup.\n"));
GNUNET_SCHEDULER_shutdown ();
if (NULL != rc->test_master)
{
struct GNUNET_TESTBED_RunHandle *rc;
char *topology;
- struct CompatibilityCheckContext *hc;
+ struct CompatibilityCheckContext *hc;
struct GNUNET_TIME_Relative timeout;
unsigned long long number;
unsigned int hid;
unsigned int nhost;
GNUNET_assert (num_peers > 0);
- rc = GNUNET_malloc (sizeof (struct GNUNET_TESTBED_RunHandle));
+ rc = GNUNET_new (struct GNUNET_TESTBED_RunHandle);
rc->cfg = GNUNET_CONFIGURATION_dup (cfg);
-#if ENABLE_LL
+#if ENABLE_SUPERMUC
rc->num_hosts = GNUNET_TESTBED_hosts_load_from_loadleveler (rc->cfg,
&rc->hosts);
if (0 == rc->num_hosts)
break;
case GNUNET_TESTBED_TOPOLOGY_FROM_FILE:
if (GNUNET_OK !=
- GNUNET_CONFIGURATION_get_value_string (rc->cfg, TESTBED_CONFIG_SECTION,
+ GNUNET_CONFIGURATION_get_value_filename (rc->cfg, TESTBED_CONFIG_SECTION,
"OVERLAY_TOPOLOGY_FILE",
&rc->topo_file))
{