GNUnet  0.20.0
GNUNET_TESTBED_RunHandle Struct Reference

Testbed Run Handle. More...

Collaboration diagram for GNUNET_TESTBED_RunHandle:
[legend]

Data Fields

struct GNUNET_TESTBED_Controllerc
 The controller handle. More...
 
struct GNUNET_CONFIGURATION_Handlecfg
 The configuration of the controller. More...
 
struct GNUNET_TESTBED_Hosth
 Handle to the host on which the controller runs. More...
 
struct GNUNET_TESTBED_ControllerProccproc
 The handle to the controller process. More...
 
GNUNET_TESTBED_ControllerCallback cc
 The callback to use as controller callback. More...
 
void * cc_cls
 The pointer to the controller callback. More...
 
char * trusted_ip
 The trusted IP string. More...
 
GNUNET_TESTBED_TestMaster test_master
 TestMaster callback to call when testbed initialization is done. More...
 
void * test_master_cls
 The closure for the TestMaster callback. More...
 
struct GNUNET_CONTAINER_MultiHashMap32rcop_map
 A hashmap for operations started by us. More...
 
struct GNUNET_TESTBED_Host ** hosts
 An array of hosts loaded from the hostkeys file. More...
 
struct CompatibilityCheckContexthclist
 Array of compatibility check contexts. More...
 
struct GNUNET_TESTBED_Peer ** peers
 Array of peers which we create. More...
 
struct GNUNET_TESTBED_Operationtopology_operation
 The topology generation operation. More...
 
char * topo_file
 The file containing topology data. More...
 
struct GNUNET_TESTBED_HostRegistrationHandlereg_handle
 Host registration handle. More...
 
struct GNUNET_TIME_Absolute pstart_time
 Profiling start time. More...
 
struct GNUNET_SCHEDULER_Taskregister_hosts_task
 Host registration task. More...
 
struct GNUNET_SCHEDULER_Tasktimeout_task
 Task to be run of a timeout. More...
 
struct GNUNET_SCHEDULER_Taskinterrupt_task
 Task run upon shutdown interrupts. More...
 
uint64_t event_mask
 The event mask for the controller. More...
 
enum State state
 State of this context. More...
 
enum GNUNET_TESTBED_TopologyOption topology
 The topology which has to be achieved with the peers started in this context. More...
 
int shutdown
 Have we already shutdown. More...
 
unsigned int num_hosts
 Number of hosts in the given host file. More...
 
unsigned int reg_hosts
 Number of registered hosts. More...
 
unsigned int peer_count
 Current peer count for an operation; Set this to 0 and increment for each successful operation on a peer. More...
 
unsigned int num_peers
 number of peers to start More...
 
unsigned int num_oc
 Expected overlay connects. More...
 
unsigned int random_links
 Number of random links to established. More...
 
unsigned int links_succeeded
 the number of overlay link connection attempts that succeeded More...
 
unsigned int links_failed
 the number of overlay link connection attempts that failed More...
 

Detailed Description

Testbed Run Handle.

Definition at line 162 of file testbed_api_testbed.c.

Field Documentation

◆ c

struct GNUNET_TESTBED_Controller* GNUNET_TESTBED_RunHandle::c

The controller handle.

Definition at line 167 of file testbed_api_testbed.c.

Referenced by cleanup(), controller_status_cb(), create_peers(), interrupt(), register_hosts(), and wait_op_completion().

◆ cfg

struct GNUNET_CONFIGURATION_Handle* GNUNET_TESTBED_RunHandle::cfg

The configuration of the controller.

This is based on the cfg given to the function GNUNET_TESTBED_run(). We also use this config as a template while for peers

Definition at line 174 of file testbed_api_testbed.c.

Referenced by gnunet_testing.Peer::__del__(), cleanup(), controller_status_cb(), create_peers(), event_cb(), gnunet_testing.Peer::get_statistics_value(), GNUNET_TESTBED_run(), gnunet_testing.Peer::start(), and gnunet_testing.Peer::stop().

◆ h

struct GNUNET_TESTBED_Host* GNUNET_TESTBED_RunHandle::h

Handle to the host on which the controller runs.

Definition at line 179 of file testbed_api_testbed.c.

Referenced by cleanup(), controller_status_cb(), create_peers(), GNUNET_TESTBED_run(), host_habitable_cb(), and register_hosts().

◆ cproc

struct GNUNET_TESTBED_ControllerProc* GNUNET_TESTBED_RunHandle::cproc

The handle to the controller process.

Definition at line 184 of file testbed_api_testbed.c.

Referenced by cleanup(), controller_status_cb(), GNUNET_TESTBED_run(), host_habitable_cb(), and wait_op_completion().

◆ cc

GNUNET_TESTBED_ControllerCallback GNUNET_TESTBED_RunHandle::cc

The callback to use as controller callback.

Definition at line 189 of file testbed_api_testbed.c.

Referenced by event_cb(), and GNUNET_TESTBED_run().

◆ cc_cls

void* GNUNET_TESTBED_RunHandle::cc_cls

The pointer to the controller callback.

Definition at line 194 of file testbed_api_testbed.c.

Referenced by event_cb(), and GNUNET_TESTBED_run().

◆ trusted_ip

char* GNUNET_TESTBED_RunHandle::trusted_ip

The trusted IP string.

Definition at line 199 of file testbed_api_testbed.c.

Referenced by cleanup(), host_habitable_cb(), and netint_proc().

◆ test_master

GNUNET_TESTBED_TestMaster GNUNET_TESTBED_RunHandle::test_master

TestMaster callback to call when testbed initialization is done.

Definition at line 204 of file testbed_api_testbed.c.

Referenced by call_master(), GNUNET_TESTBED_run(), and timeout_task().

◆ test_master_cls

void* GNUNET_TESTBED_RunHandle::test_master_cls

The closure for the TestMaster callback.

Definition at line 209 of file testbed_api_testbed.c.

Referenced by call_master(), GNUNET_TESTBED_run(), and timeout_task().

◆ rcop_map

struct GNUNET_CONTAINER_MultiHashMap32* GNUNET_TESTBED_RunHandle::rcop_map

A hashmap for operations started by us.

Definition at line 214 of file testbed_api_testbed.c.

Referenced by cleanup(), GNUNET_TESTBED_run(), insert_rcop(), rc_cleanup_operations(), remove_rcop(), and search_rcop().

◆ hosts

struct GNUNET_TESTBED_Host** GNUNET_TESTBED_RunHandle::hosts

An array of hosts loaded from the hostkeys file.

Definition at line 219 of file testbed_api_testbed.c.

Referenced by cleanup(), create_peers(), GNUNET_TESTBED_run(), host_habitable_cb(), and register_hosts().

◆ hclist

struct CompatibilityCheckContext* GNUNET_TESTBED_RunHandle::hclist

Array of compatibility check contexts.

Definition at line 224 of file testbed_api_testbed.c.

Referenced by cleanup(), GNUNET_TESTBED_run(), host_habitable_cb(), and rc_cleanup_operations().

◆ peers

struct GNUNET_TESTBED_Peer** GNUNET_TESTBED_RunHandle::peers

◆ topology_operation

struct GNUNET_TESTBED_Operation* GNUNET_TESTBED_RunHandle::topology_operation

The topology generation operation.

Will be null if no topology is set in the configuration

Definition at line 235 of file testbed_api_testbed.c.

Referenced by event_cb(), rc_cleanup_operations(), and topology_completion_callback().

◆ topo_file

char* GNUNET_TESTBED_RunHandle::topo_file

The file containing topology data.

Only used if the topology is set to 'FROM_FILE'

Definition at line 240 of file testbed_api_testbed.c.

Referenced by cleanup(), event_cb(), and GNUNET_TESTBED_run().

◆ reg_handle

struct GNUNET_TESTBED_HostRegistrationHandle* GNUNET_TESTBED_RunHandle::reg_handle

Host registration handle.

Definition at line 245 of file testbed_api_testbed.c.

Referenced by cleanup(), host_registration_completion(), rc_cleanup_operations(), and register_hosts().

◆ pstart_time

struct GNUNET_TIME_Absolute GNUNET_TESTBED_RunHandle::pstart_time

Profiling start time.

Definition at line 245 of file testbed_api_testbed.c.

Referenced by create_peers(), event_cb(), prof_time(), start_peers_task(), and wait_op_completion().

◆ register_hosts_task

struct GNUNET_SCHEDULER_Task* GNUNET_TESTBED_RunHandle::register_hosts_task

Host registration task.

Definition at line 255 of file testbed_api_testbed.c.

Referenced by cleanup(), controller_status_cb(), host_registration_completion(), rc_cleanup_operations(), and register_hosts().

◆ timeout_task

struct GNUNET_SCHEDULER_Task* GNUNET_TESTBED_RunHandle::timeout_task

Task to be run of a timeout.

Definition at line 260 of file testbed_api_testbed.c.

Referenced by call_master(), GNUNET_TESTBED_run(), rc_cleanup_operations(), and timeout_task().

◆ interrupt_task

struct GNUNET_SCHEDULER_Task* GNUNET_TESTBED_RunHandle::interrupt_task

Task run upon shutdown interrupts.

Definition at line 265 of file testbed_api_testbed.c.

Referenced by cancel_interrupt_task(), GNUNET_TESTBED_run(), and interrupt().

◆ event_mask

uint64_t GNUNET_TESTBED_RunHandle::event_mask

The event mask for the controller.

Definition at line 270 of file testbed_api_testbed.c.

Referenced by controller_status_cb(), event_cb(), and GNUNET_TESTBED_run().

◆ state

◆ topology

enum GNUNET_TESTBED_TopologyOption GNUNET_TESTBED_RunHandle::topology

The topology which has to be achieved with the peers started in this context.

Definition at line 270 of file testbed_api_testbed.c.

Referenced by controller_status_cb(), event_cb(), and GNUNET_TESTBED_run().

◆ shutdown

int GNUNET_TESTBED_RunHandle::shutdown

Have we already shutdown.

Definition at line 285 of file testbed_api_testbed.c.

Referenced by event_cb(), interrupt(), and wait_op_completion().

◆ num_hosts

unsigned int GNUNET_TESTBED_RunHandle::num_hosts

Number of hosts in the given host file.

Definition at line 290 of file testbed_api_testbed.c.

Referenced by cleanup(), controller_status_cb(), create_peers(), event_cb(), GNUNET_TESTBED_run(), host_habitable_cb(), rc_cleanup_operations(), and register_hosts().

◆ reg_hosts

unsigned int GNUNET_TESTBED_RunHandle::reg_hosts

Number of registered hosts.

Also used as a counter while checking habitabillity of hosts

Definition at line 296 of file testbed_api_testbed.c.

Referenced by controller_status_cb(), event_cb(), host_habitable_cb(), and register_hosts().

◆ peer_count

unsigned int GNUNET_TESTBED_RunHandle::peer_count

Current peer count for an operation; Set this to 0 and increment for each successful operation on a peer.

Definition at line 302 of file testbed_api_testbed.c.

Referenced by create_peers(), event_cb(), peer_create_cb(), and start_peers_task().

◆ num_peers

unsigned int GNUNET_TESTBED_RunHandle::num_peers

number of peers to start

Definition at line 307 of file testbed_api_testbed.c.

Referenced by call_master(), create_peers(), event_cb(), GNUNET_TESTBED_run(), peer_create_cb(), and start_peers_task().

◆ num_oc

unsigned int GNUNET_TESTBED_RunHandle::num_oc

Expected overlay connects.

Should be zero if no topology is relevant

Definition at line 312 of file testbed_api_testbed.c.

Referenced by event_cb().

◆ random_links

unsigned int GNUNET_TESTBED_RunHandle::random_links

Number of random links to established.

Definition at line 317 of file testbed_api_testbed.c.

Referenced by event_cb(), and GNUNET_TESTBED_run().

◆ links_succeeded

unsigned int GNUNET_TESTBED_RunHandle::links_succeeded

the number of overlay link connection attempts that succeeded

Definition at line 322 of file testbed_api_testbed.c.

Referenced by call_master(), and topology_completion_callback().

◆ links_failed

unsigned int GNUNET_TESTBED_RunHandle::links_failed

the number of overlay link connection attempts that failed

Definition at line 327 of file testbed_api_testbed.c.

Referenced by call_master(), and topology_completion_callback().


The documentation for this struct was generated from the following file: