GNUnet 0.21.1
PeerContext Struct Reference

Struct used to keep track of other peer's status. More...

Collaboration diagram for PeerContext:
[legend]

Data Fields

struct Subsub
 The Sub this context belongs to. More...
 
struct GNUNET_MQ_Handlemq
 Message queue open to client. More...
 
struct ChannelCtxsend_channel_ctx
 Channel open to client. More...
 
struct ChannelCtxrecv_channel_ctx
 Channel open from client. More...
 
struct PeerPendingOppending_ops
 Array of pending operations on this peer. More...
 
struct PendingMessageonline_check_pending
 Handle to the callback given to cadet_ntfy_tmt_rdy() More...
 
unsigned int num_pending_ops
 Number of pending operations. More...
 
struct GNUNET_PeerIdentity peer_id
 Identity of the peer. More...
 
uint32_t peer_flags
 Flags indicating status of peer. More...
 
struct GNUNET_TIME_Absolute last_message_recv
 Last time we received something from that peer. More...
 
struct GNUNET_TIME_Absolute last_keepalive
 Last time we received a keepalive message. More...
 
struct PendingMessagepending_messages_head
 DLL with all messages that are yet to be sent. More...
 
struct PendingMessagepending_messages_tail
 
uint32_t round_pull_req
 This is pobably followed by 'statistical' data (when we first saw it, how did we get its ID, how many pushes (in a timeinterval), ...) More...
 

Detailed Description

Struct used to keep track of other peer's status.

This is stored in a multipeermap. It contains information such as cadet channels, a message queue for sending, status about the channels, the pending operations on this peer and some flags about the status of the peer itself. (online, valid, ...)

Definition at line 151 of file gnunet-service-rps.c.

Field Documentation

◆ sub

◆ mq

struct GNUNET_MQ_Handle* PeerContext::mq

Message queue open to client.

Definition at line 161 of file gnunet-service-rps.c.

Referenced by destroy_peer(), get_mq(), and remove_channel_ctx().

◆ send_channel_ctx

◆ recv_channel_ctx

struct ChannelCtx* PeerContext::recv_channel_ctx

◆ pending_ops

struct PeerPendingOp* PeerContext::pending_ops

Array of pending operations on this peer.

Definition at line 176 of file gnunet-service-rps.c.

Referenced by check_operation_scheduled(), destroy_peer(), schedule_operation(), and set_peer_online().

◆ online_check_pending

struct PendingMessage* PeerContext::online_check_pending

Handle to the callback given to cadet_ntfy_tmt_rdy()

To be canceled on shutdown.

Definition at line 183 of file gnunet-service-rps.c.

Referenced by check_peer_online(), destroy_peer(), issue_peer_online_check(), mq_online_check_successful(), and set_peer_online().

◆ num_pending_ops

unsigned int PeerContext::num_pending_ops

Number of pending operations.

Definition at line 188 of file gnunet-service-rps.c.

Referenced by check_operation_scheduled(), destroy_peer(), schedule_operation(), and set_peer_online().

◆ peer_id

◆ peer_flags

uint32_t PeerContext::peer_flags

Flags indicating status of peer.

Definition at line 198 of file gnunet-service-rps.c.

◆ last_message_recv

struct GNUNET_TIME_Absolute PeerContext::last_message_recv

Last time we received something from that peer.

Definition at line 203 of file gnunet-service-rps.c.

◆ last_keepalive

struct GNUNET_TIME_Absolute PeerContext::last_keepalive

Last time we received a keepalive message.

Definition at line 208 of file gnunet-service-rps.c.

◆ pending_messages_head

struct PendingMessage* PeerContext::pending_messages_head

DLL with all messages that are yet to be sent.

Definition at line 213 of file gnunet-service-rps.c.

Referenced by check_removable(), destroy_peer(), insert_pending_message(), and remove_pending_message().

◆ pending_messages_tail

struct PendingMessage* PeerContext::pending_messages_tail

Definition at line 214 of file gnunet-service-rps.c.

Referenced by insert_pending_message(), and remove_pending_message().

◆ round_pull_req

uint32_t PeerContext::round_pull_req

This is pobably followed by 'statistical' data (when we first saw it, how did we get its ID, how many pushes (in a timeinterval), ...)

Definition at line 221 of file gnunet-service-rps.c.

Referenced by handle_peer_pull_reply(), and send_pull_request().


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