GNUnet 0.21.1
GNUNET_ARM_Handle Struct Reference

Handle for interacting with ARM. More...

Collaboration diagram for GNUNET_ARM_Handle:
[legend]

Data Fields

struct GNUNET_MQ_Handlemq
 Our connection to the ARM service. More...
 
const struct GNUNET_CONFIGURATION_Handlecfg
 The configuration that we are using. More...
 
struct GNUNET_ARM_Operationoperation_pending_head
 Head of doubly-linked list of pending operations. More...
 
struct GNUNET_ARM_Operationoperation_pending_tail
 Tail of doubly-linked list of pending operations. More...
 
GNUNET_ARM_ConnectionStatusCallback conn_status
 Callback to invoke on connection/disconnection. More...
 
void * conn_status_cls
 Closure for conn_status. More...
 
struct GNUNET_ARM_Operationthm
 ARM operation where the goal is to wait for ARM shutdown to complete. More...
 
struct GNUNET_SCHEDULER_Taskreconnect_task
 ID of the reconnect task (if any). More...
 
struct GNUNET_TIME_Relative retry_backoff
 Current delay we use for re-trying to connect to core. More...
 
uint64_t request_id_counter
 Counter for request identifiers. More...
 
int currently_up
 Have we detected that ARM is up? More...
 

Detailed Description

Handle for interacting with ARM.

Definition at line 102 of file arm_api.c.

Field Documentation

◆ mq

struct GNUNET_MQ_Handle* GNUNET_ARM_Handle::mq

Our connection to the ARM service.

Definition at line 107 of file arm_api.c.

Referenced by cadet_mq_send_impl(), change_service(), core_mq_send_impl(), disconnect(), do_disconnect(), force_reconnect(), GNUNET_ARM_disconnect(), GNUNET_ARM_monitor_stop(), GNUNET_ARM_request_service_list(), GNUNET_CADET_channel_create(), GNUNET_CADET_channel_destroy(), GNUNET_CADET_connect(), GNUNET_CORE_connect(), GNUNET_DATASTORE_connect(), GNUNET_DATASTORE_disconnect(), GNUNET_IDENTITY_connect(), GNUNET_IDENTITY_create(), GNUNET_IDENTITY_delete(), GNUNET_IDENTITY_disconnect(), GNUNET_IDENTITY_rename(), GNUNET_NAMECACHE_block_cache(), GNUNET_NAMECACHE_connect(), GNUNET_NAMECACHE_disconnect(), GNUNET_NAMECACHE_lookup_block(), GNUNET_NAMESTORE_connect(), GNUNET_NAMESTORE_disconnect(), GNUNET_NAMESTORE_record_set_edit_begin(), GNUNET_NAMESTORE_record_set_edit_cancel(), GNUNET_NAMESTORE_records_store(), GNUNET_NAMESTORE_zone_iteration_start(), GNUNET_NAMESTORE_zone_iteration_start2(), GNUNET_NAMESTORE_zone_iteration_stop(), GNUNET_NAMESTORE_zone_iterator_next(), GNUNET_NAMESTORE_zone_to_name(), GNUNET_NSE_connect(), GNUNET_NSE_disconnect(), GNUNET_PEERSTORE_connect(), GNUNET_PEERSTORE_iteration_start(), GNUNET_PEERSTORE_store(), GNUNET_RECLAIM_attribute_delete(), GNUNET_RECLAIM_attribute_store(), GNUNET_RECLAIM_connect(), GNUNET_RECLAIM_credential_delete(), GNUNET_RECLAIM_credential_store(), GNUNET_RECLAIM_disconnect(), GNUNET_RECLAIM_get_attributes_next(), GNUNET_RECLAIM_get_attributes_start(), GNUNET_RECLAIM_get_attributes_stop(), GNUNET_RECLAIM_get_credentials_next(), GNUNET_RECLAIM_get_credentials_start(), GNUNET_RECLAIM_get_credentials_stop(), GNUNET_RECLAIM_ticket_consume(), GNUNET_RECLAIM_ticket_issue(), GNUNET_RECLAIM_ticket_iteration_next(), GNUNET_RECLAIM_ticket_iteration_start(), GNUNET_RECLAIM_ticket_iteration_stop(), GNUNET_RECLAIM_ticket_revoke(), GNUNET_REVOCATION_revoke(), GNUNET_REVOCATION_revoke_cancel(), GNUNET_RPS_connect(), GNUNET_RPS_disconnect(), GNUNET_RPS_seed_ids(), GNUNET_RPS_sub_start(), GNUNET_RPS_sub_stop(), GNUNET_SCALARPRODUCT_accept_computation(), GNUNET_SCALARPRODUCT_cancel(), GNUNET_SCALARPRODUCT_start_computation(), GNUNET_STATISTICS_destroy(), handle_channel_created(), handle_mq_error(), handle_send_ready(), mq_error_handler(), open_port_cb(), process_queue(), reconnect(), reconnect_arm(), reconnect_arm_later(), reconnect_arm_monitor(), reconnect_arm_monitor_later(), reconnect_later(), records_lookup(), reschedule_connect(), schedule_action(), send_get(), send_get_known_results(), send_monitor_start(), try_connect(), and try_reconnect().

◆ cfg

◆ operation_pending_head

struct GNUNET_ARM_Operation* GNUNET_ARM_Handle::operation_pending_head

◆ operation_pending_tail

struct GNUNET_ARM_Operation* GNUNET_ARM_Handle::operation_pending_tail

◆ conn_status

GNUNET_ARM_ConnectionStatusCallback GNUNET_ARM_Handle::conn_status

Callback to invoke on connection/disconnection.

Definition at line 127 of file arm_api.c.

Referenced by GNUNET_ARM_connect(), handle_confirm(), notify_running(), reconnect_arm(), and reconnect_arm_later().

◆ conn_status_cls

void* GNUNET_ARM_Handle::conn_status_cls

Closure for conn_status.

Definition at line 132 of file arm_api.c.

Referenced by GNUNET_ARM_connect(), handle_confirm(), notify_running(), reconnect_arm(), and reconnect_arm_later().

◆ thm

struct GNUNET_ARM_Operation* GNUNET_ARM_Handle::thm

ARM operation where the goal is to wait for ARM shutdown to complete.

This operation is special in that it waits for an error on the mq. So we complete it by calling the continuation in the mq_error_handler(). Note that the operation is no longer in the operation_pending_head DLL once it is referenced from this field.

Definition at line 142 of file arm_api.c.

Referenced by GNUNET_ARM_operation_cancel(), handle_arm_result(), and mq_error_handler().

◆ reconnect_task

◆ retry_backoff

struct GNUNET_TIME_Relative GNUNET_ARM_Handle::retry_backoff

Current delay we use for re-trying to connect to core.

Definition at line 152 of file arm_api.c.

Referenced by handle_init_reply(), reconnect_arm_later(), reconnect_arm_monitor_later(), and reconnect_later().

◆ request_id_counter

uint64_t GNUNET_ARM_Handle::request_id_counter

Counter for request identifiers.

They are used to match replies from ARM to operations in the operation_pending_head DLL.

Definition at line 158 of file arm_api.c.

Referenced by change_service(), and GNUNET_ARM_request_service_list().

◆ currently_up

int GNUNET_ARM_Handle::currently_up

Have we detected that ARM is up?

Definition at line 163 of file arm_api.c.

Referenced by GNUNET_ARM_request_service_start(), handle_confirm(), mq_error_handler(), notify_running(), reconnect_arm(), and reconnect_arm_later().


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