Tor 0.4.9.3-alpha-dev
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Data Fields
networkstatus_t Struct Reference

#include <networkstatus_st.h>

Data Fields

networkstatus_type_t type
 
consensus_flavor_t flavor
 
unsigned int has_measured_bws: 1
 
time_t published
 
time_t valid_after
 
time_t fresh_until
 
time_t valid_until
 
int consensus_method
 
smartlist_tsupported_methods
 
smartlist_tpackage_lines
 
int vote_seconds
 
int dist_seconds
 
char * client_versions
 
char * server_versions
 
char * recommended_relay_protocols
 
char * recommended_client_protocols
 
char * required_relay_protocols
 
char * required_client_protocols
 
smartlist_tknown_flags
 
smartlist_tnet_params
 
smartlist_tweight_params
 
smartlist_tvoters
 
struct authority_cert_tcert
 
common_digests_t digests
 
uint8_t digest_sha3_as_signed [DIGEST256_LEN]
 
smartlist_trouterstatus_list
 
digestmap_t * desc_digest_map
 
networkstatus_sr_info_t sr_info
 
smartlist_tbw_file_headers
 
uint8_t bw_file_digest256 [DIGEST256_LEN]
 

Detailed Description

A common structure to hold a v3 network status vote, or a v3 network status consensus.

Definition at line 26 of file networkstatus_st.h.

Field Documentation

◆ bw_file_digest256

uint8_t bw_file_digest256[DIGEST256_LEN]

A SHA256 digest of the bandwidth file used in a vote.

Definition at line 109 of file networkstatus_st.h.

Referenced by dirserv_generate_networkstatus_vote_obj(), and format_networkstatus_vote().

◆ bw_file_headers

smartlist_t* bw_file_headers

List of key=value strings from the headers of the bandwidth list file

Definition at line 106 of file networkstatus_st.h.

Referenced by dirserv_generate_networkstatus_vote_obj(), format_networkstatus_vote(), and networkstatus_vote_free_().

◆ cert

struct authority_cert_t* cert

◆ client_versions

char* client_versions

Comma-separated list of recommended client software, or NULL if this voter has no opinion.

Definition at line 56 of file networkstatus_st.h.

Referenced by dirserv_generate_networkstatus_vote_obj(), format_networkstatus_vote(), getinfo_helper_events(), networkstatus_parse_vote_from_string(), networkstatus_vote_free_(), and routers_update_all_from_networkstatus().

◆ consensus_method

int consensus_method

Consensus only: what method was used to produce this consensus?

Definition at line 40 of file networkstatus_st.h.

Referenced by networkstatus_parse_vote_from_string(), and warn_about_family_id_config().

◆ desc_digest_map

digestmap_t* desc_digest_map

◆ digest_sha3_as_signed

uint8_t digest_sha3_as_signed[DIGEST256_LEN]

A SHA3-256 digest of the document, not including signatures: used for consensus diffs

Definition at line 91 of file networkstatus_st.h.

Referenced by digest_list_contains_best_consensus(), networkstatus_parse_vote_from_string(), and networkstatus_set_current_consensus().

◆ digests

◆ dist_seconds

int dist_seconds

How long does this vote/consensus claim that authorities take to distribute their consensus signatures to one another?

Definition at line 52 of file networkstatus_st.h.

Referenced by dirserv_generate_networkstatus_vote_obj(), format_networkstatus_vote(), networkstatus_parse_vote_from_string(), and warn_early_consensus().

◆ flavor

◆ fresh_until

time_t fresh_until

◆ has_measured_bws

unsigned int has_measured_bws

True iff this networkstatus contains measured= bandwidth values.

Definition at line 29 of file networkstatus_st.h.

◆ known_flags

smartlist_t* known_flags

List of flags that this vote/consensus applies to routers. If a flag is not listed here, the voter has no opinion on what its value should be.

Definition at line 70 of file networkstatus_st.h.

Referenced by dirserv_generate_networkstatus_vote_obj(), format_networkstatus_vote(), networkstatus_parse_vote_from_string(), and networkstatus_vote_free_().

◆ net_params

smartlist_t* net_params

List of key=value strings for the parameters in this vote or consensus, sorted by key.

Definition at line 74 of file networkstatus_st.h.

Referenced by dirserv_generate_networkstatus_vote_obj(), format_networkstatus_vote(), networkstatus_get_param(), networkstatus_parse_vote_from_string(), and networkstatus_vote_free_().

◆ package_lines

smartlist_t* package_lines

List of 'package' lines describing hashes of downloadable packages

Definition at line 45 of file networkstatus_st.h.

Referenced by getinfo_helper_networkstatus(), networkstatus_parse_vote_from_string(), and networkstatus_vote_free_().

◆ published

time_t published

Vote only: Time when vote was written.

Definition at line 32 of file networkstatus_st.h.

Referenced by dirserv_generate_networkstatus_vote_obj(), dirvote_add_vote(), format_networkstatus_vote(), and networkstatus_parse_vote_from_string().

◆ recommended_client_protocols

char* recommended_client_protocols

Definition at line 64 of file networkstatus_st.h.

◆ recommended_relay_protocols

char* recommended_relay_protocols

Lists of subprotocol versions which are recommended for relays and clients, or which are require for relays and clients. Tor shouldn't make any more network connections if a required protocol is missing.

Definition at line 63 of file networkstatus_st.h.

Referenced by dirserv_generate_networkstatus_vote_obj(), format_protocols_lines_for_vote(), get_nth_protocol_set_vote(), networkstatus_check_required_protocols(), networkstatus_parse_vote_from_string(), and networkstatus_vote_free_().

◆ required_client_protocols

char* required_client_protocols

Definition at line 66 of file networkstatus_st.h.

◆ required_relay_protocols

char* required_relay_protocols

Definition at line 65 of file networkstatus_st.h.

◆ routerstatus_list

smartlist_t* routerstatus_list

◆ server_versions

char* server_versions

Definition at line 57 of file networkstatus_st.h.

◆ sr_info

◆ supported_methods

smartlist_t* supported_methods

Vote only: what methods is this voter willing to use?

Definition at line 42 of file networkstatus_st.h.

Referenced by networkstatus_parse_vote_from_string(), and networkstatus_vote_free_().

◆ type

◆ valid_after

time_t valid_after

◆ valid_until

time_t valid_until

◆ vote_seconds

int vote_seconds

How long does this vote/consensus claim that authorities take to distribute their votes to one another?

Definition at line 49 of file networkstatus_st.h.

Referenced by dirserv_generate_networkstatus_vote_obj(), format_networkstatus_vote(), and networkstatus_parse_vote_from_string().

◆ voters

smartlist_t* voters

◆ weight_params

smartlist_t* weight_params

List of key=value strings for the bw weight parameters in the consensus.

Definition at line 78 of file networkstatus_st.h.

Referenced by networkstatus_get_bw_weight(), networkstatus_parse_vote_from_string(), and networkstatus_vote_free_().


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