GNUnet  0.11.x
Data Fields
ValidationEntry Struct Reference

Information about an address under validation. More...

Collaboration diagram for ValidationEntry:
[legend]

Data Fields

struct GNUNET_HELLO_Addressaddress
 The address. More...
 
struct GST_BlacklistCheckbc
 Handle to the blacklist check (if we're currently in it). More...
 
struct GNUNET_CRYPTO_EddsaSignature pong_sig_cache
 Cached PONG signature. More...
 
struct GNUNET_SCHEDULER_Tasktimeout_task
 ID of task that will clean up this entry if nothing happens. More...
 
struct GNUNET_SCHEDULER_Taskrevalidation_task
 ID of task that will trigger address revalidation. More...
 
struct GNUNET_TIME_Absolute send_time
 At what time did we send the latest validation request (PING)? More...
 
struct GNUNET_TIME_Absolute next_validation
 At what time do we send the next validation request (PING)? More...
 
struct GNUNET_TIME_Absolute valid_until
 Until when is this address valid? ZERO if it is not currently considered valid. More...
 
struct GNUNET_TIME_Absolute pong_sig_valid_until
 Until when is the cached PONG signature valid? ZERO if it is not currently considered valid. More...
 
struct GNUNET_TIME_Absolute revalidation_block
 How long until we can try to validate this address again? FOREVER if the address is for an unsupported plugin (from PEERINFO) ZERO if the address is considered valid (no validation needed) otherwise a time in the future if we're currently denying re-validation. More...
 
struct GNUNET_TIME_Relative latency
 Last observed latency for this address (round-trip), delay between last PING sent and PONG received; FOREVER if we never got a PONG. More...
 
enum GNUNET_TRANSPORT_ValidationState state
 Current state of this validation entry. More...
 
uint32_t challenge
 Challenge number we used. More...
 
int copied
 When passing the address in add_valid_peer_address(), did we copy the address to the HELLO yet? More...
 
int in_use
 Are we currently using this address for a connection? More...
 
int expecting_pong
 Are we expecting a PONG message for this validation entry? More...
 
int known_to_ats
 Is this address known to ATS as valid right now? More...
 
enum GNUNET_NetworkType network
 Which network type does our address belong to? More...
 

Detailed Description

Information about an address under validation.

Definition at line 224 of file gnunet-service-transport_validation.c.

Field Documentation

◆ address

struct GNUNET_HELLO_Address* ValidationEntry::address

◆ bc

struct GST_BlacklistCheck* ValidationEntry::bc

Handle to the blacklist check (if we're currently in it).

Definition at line 234 of file gnunet-service-transport_validation.c.

Referenced by cleanup_validation_entry(), revalidate_address(), and transmit_ping_if_allowed().

◆ pong_sig_cache

struct GNUNET_CRYPTO_EddsaSignature ValidationEntry::pong_sig_cache

Cached PONG signature.

Definition at line 239 of file gnunet-service-transport_validation.c.

Referenced by find_validation_entry(), and GST_validation_handle_pong().

◆ timeout_task

struct GNUNET_SCHEDULER_Task* ValidationEntry::timeout_task

ID of task that will clean up this entry if nothing happens.

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

Referenced by cleanup_validation_entry(), find_validation_entry(), and timeout_hello_validation().

◆ revalidation_task

struct GNUNET_SCHEDULER_Task* ValidationEntry::revalidation_task

◆ send_time

struct GNUNET_TIME_Absolute ValidationEntry::send_time

At what time did we send the latest validation request (PING)?

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

Referenced by GST_validation_handle_pong().

◆ next_validation

struct GNUNET_TIME_Absolute ValidationEntry::next_validation

At what time do we send the next validation request (PING)?

Definition at line 259 of file gnunet-service-transport_validation.c.

Referenced by add_valid_address(), cleanup_validation_entry(), and revalidate_address().

◆ valid_until

struct GNUNET_TIME_Absolute ValidationEntry::valid_until

Until when is this address valid? ZERO if it is not currently considered valid.

Definition at line 265 of file gnunet-service-transport_validation.c.

Referenced by add_valid_address(), add_valid_peer_address(), cleanup_validation_entry(), GST_validation_handle_pong(), iterate_addresses(), revalidate_address(), and timeout_hello_validation().

◆ pong_sig_valid_until

struct GNUNET_TIME_Absolute ValidationEntry::pong_sig_valid_until

Until when is the cached PONG signature valid? ZERO if it is not currently considered valid.

Definition at line 271 of file gnunet-service-transport_validation.c.

Referenced by find_validation_entry(), and GST_validation_handle_pong().

◆ revalidation_block

struct GNUNET_TIME_Absolute ValidationEntry::revalidation_block

How long until we can try to validate this address again? FOREVER if the address is for an unsupported plugin (from PEERINFO) ZERO if the address is considered valid (no validation needed) otherwise a time in the future if we're currently denying re-validation.

Definition at line 279 of file gnunet-service-transport_validation.c.

Referenced by iterate_addresses(), revalidate_address(), and timeout_hello_validation().

◆ latency

struct GNUNET_TIME_Relative ValidationEntry::latency

Last observed latency for this address (round-trip), delay between last PING sent and PONG received; FOREVER if we never got a PONG.

Definition at line 285 of file gnunet-service-transport_validation.c.

Referenced by add_valid_address(), find_validation_entry(), and GST_validation_handle_pong().

◆ state

enum GNUNET_TRANSPORT_ValidationState ValidationEntry::state

Current state of this validation entry.

Definition at line 290 of file gnunet-service-transport_validation.c.

Referenced by validation_entry_changed().

◆ challenge

uint32_t ValidationEntry::challenge

Challenge number we used.

Definition at line 295 of file gnunet-service-transport_validation.c.

Referenced by find_validation_entry().

◆ copied

int ValidationEntry::copied

When passing the address in add_valid_peer_address(), did we copy the address to the HELLO yet?

Definition at line 301 of file gnunet-service-transport_validation.c.

Referenced by add_valid_peer_address(), and GST_validation_handle_pong().

◆ in_use

int ValidationEntry::in_use

Are we currently using this address for a connection?

Definition at line 306 of file gnunet-service-transport_validation.c.

Referenced by find_validation_entry(), GST_validation_set_address_use(), and revalidate_address().

◆ expecting_pong

int ValidationEntry::expecting_pong

Are we expecting a PONG message for this validation entry?

Definition at line 311 of file gnunet-service-transport_validation.c.

Referenced by cleanup_validation_entry(), and GST_validation_handle_pong().

◆ known_to_ats

int ValidationEntry::known_to_ats

Is this address known to ATS as valid right now?

Definition at line 316 of file gnunet-service-transport_validation.c.

Referenced by add_valid_address(), cleanup_validation_entry(), and GST_validation_handle_pong().

◆ network

enum GNUNET_NetworkType ValidationEntry::network

Which network type does our address belong to?

Definition at line 321 of file gnunet-service-transport_validation.c.

Referenced by add_valid_address(), and GST_validation_handle_pong().


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