GNUnet  0.19.4
OverlayConnectContext Struct Reference

Context information for connecting 2 peers in overlay. More...

Collaboration diagram for OverlayConnectContext:
[legend]

Data Fields

struct OverlayConnectContextnext
 The next pointer for maintaining a DLL of all OverlayConnectContexts. More...
 
struct OverlayConnectContextprev
 The prev pointer for maintaining a DLL of all OverlayConnectContexts. More...
 
struct GNUNET_SERVICE_Clientclient
 The client which has requested for overlay connection. More...
 
struct Peerpeer
 the first peer which is to expect an overlay connection from the second peer. More...
 
struct GNUNET_TRANSPORT_CoreHandlep1th_
 Transport handle of the first peer obtained from cache to get its HELLO. More...
 
struct GST_ConnectionPool_GetHandlecgh_p1th
 The GST_ConnectionPool_GetHandle for the peer1's transport handle. More...
 
struct GST_ConnectionPool_GetHandlecgh_ch
 The GST_ConnectionPool_GetHandle for registering callback to notify CORE level peer connects and to get our identity. More...
 
struct GNUNET_MessageHeaderhello
 HELLO of the first peer. More...
 
struct GNUNET_TRANSPORT_HelloGetHandleghh
 Get GetHelloHandle to acquire a HELLO of the first peer. More...
 
char * emsg
 The error message we send if this overlay connect operation has timed out. More...
 
union {
   struct LocalPeer2Context   local
 Context information to be used if the second peer is local. More...
 
   struct RemotePeer2Context   remote
 Context information to be used if the second peer is remote. More...
 
p2ctx
 Context information for operations on the second peer. More...
 
struct GNUNET_PeerIdentity peer_identity
 The peer identity of the first peer. More...
 
struct GNUNET_PeerIdentity other_peer_identity
 The peer identity of the other peer. More...
 
uint64_t op_id
 The id of the operation responsible for creating this context. More...
 
struct GNUNET_SCHEDULER_Tasksend_hello_task
 The id of the task for sending HELLO of peer 2 to peer 1 and ask peer 1 to connect to peer 2. More...
 
struct GNUNET_SCHEDULER_Tasktimeout_task
 The id of the overlay connect timeout task. More...
 
struct GNUNET_SCHEDULER_Taskcleanup_task
 The id of the cleanup task. More...
 
enum OverlayConnectContextType type
 The type of this context information. More...
 
uint32_t other_peer_id
 The id of the second peer which has to connect to the first peer. More...
 

Detailed Description

Context information for connecting 2 peers in overlay.

Definition at line 154 of file gnunet-service-testbed_oc.c.

Field Documentation

◆ next

struct OverlayConnectContext* OverlayConnectContext::next

The next pointer for maintaining a DLL of all OverlayConnectContexts.

Definition at line 159 of file gnunet-service-testbed_oc.c.

Referenced by GST_notify_client_disconnect_oc().

◆ prev

struct OverlayConnectContext* OverlayConnectContext::prev

The prev pointer for maintaining a DLL of all OverlayConnectContexts.

Definition at line 164 of file gnunet-service-testbed_oc.c.

◆ client

struct GNUNET_SERVICE_Client* OverlayConnectContext::client

The client which has requested for overlay connection.

This is used to send either a success of failure message

Definition at line 170 of file gnunet-service-testbed_oc.c.

Referenced by GST_notify_client_disconnect_oc(), handle_overlay_connect(), send_overlay_connect_success_msg(), and timeout_overlay_connect().

◆ peer

◆ p1th_

struct GNUNET_TRANSPORT_CoreHandle* OverlayConnectContext::p1th_

Transport handle of the first peer obtained from cache to get its HELLO.

Do NOT close/disconnect.

Definition at line 181 of file gnunet-service-testbed_oc.c.

Referenced by hello_update_cb(), p1_transport_connect_cache_callback(), and p2_transport_connect().

◆ cgh_p1th

struct GST_ConnectionPool_GetHandle* OverlayConnectContext::cgh_p1th

◆ cgh_ch

struct GST_ConnectionPool_GetHandle* OverlayConnectContext::cgh_ch

The GST_ConnectionPool_GetHandle for registering callback to notify CORE level peer connects and to get our identity.

Definition at line 192 of file gnunet-service-testbed_oc.c.

Referenced by cleanup_occ(), handle_overlay_connect(), and overlay_connect_get_config().

◆ hello

struct GNUNET_MessageHeader* OverlayConnectContext::hello

HELLO of the first peer.

This should be sent to the second peer.

Definition at line 197 of file gnunet-service-testbed_oc.c.

Referenced by cleanup_occ(), hello_update_cb(), occ_cache_get_handle_core_cb(), p2_transport_connect(), send_hello(), and send_hello_thru_rocc().

◆ ghh

struct GNUNET_TRANSPORT_HelloGetHandle* OverlayConnectContext::ghh

Get GetHelloHandle to acquire a HELLO of the first peer.

Definition at line 202 of file gnunet-service-testbed_oc.c.

Referenced by cleanup_occ(), hello_update_cb(), p1_transport_connect_cache_callback(), and p2_transport_connect().

◆ emsg

◆ local

struct LocalPeer2Context OverlayConnectContext::local

◆ remote

struct RemotePeer2Context OverlayConnectContext::remote

◆ 

◆ peer_identity

◆ other_peer_identity

◆ op_id

◆ send_hello_task

struct GNUNET_SCHEDULER_Task* OverlayConnectContext::send_hello_task

The id of the task for sending HELLO of peer 2 to peer 1 and ask peer 1 to connect to peer 2.

Definition at line 244 of file gnunet-service-testbed_oc.c.

Referenced by cleanup_occ(), occ_hello_sent_cb(), overlay_connect_notify(), p2_transport_connect(), p2_transport_connect_cache_callback(), and send_hello().

◆ timeout_task

◆ cleanup_task

struct GNUNET_SCHEDULER_Task* OverlayConnectContext::cleanup_task

The id of the cleanup task.

Definition at line 254 of file gnunet-service-testbed_oc.c.

Referenced by cleanup_occ(), do_cleanup_occ(), occ_cache_get_handle_core_cb(), and overlay_connect_notify().

◆ type

◆ other_peer_id

uint32_t OverlayConnectContext::other_peer_id

The id of the second peer which has to connect to the first peer.

Definition at line 264 of file gnunet-service-testbed_oc.c.

Referenced by cleanup_occ(), handle_overlay_connect(), occ_hello_sent_cb(), p2_controller_connect_cb(), p2_transport_connect(), send_hello_thru_rocc(), and send_overlay_connect_success_msg().


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