Tor
0.4.7.0-alpha-dev
|
#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_t * | supported_methods |
smartlist_t * | package_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_t * | known_flags |
smartlist_t * | net_params |
smartlist_t * | weight_params |
smartlist_t * | voters |
struct authority_cert_t * | cert |
common_digests_t | digests |
uint8_t | digest_sha3_as_signed [DIGEST256_LEN] |
smartlist_t * | routerstatus_list |
digestmap_t * | desc_digest_map |
networkstatus_sr_info_t | sr_info |
smartlist_t * | bw_file_headers |
uint8_t | bw_file_digest256 [DIGEST256_LEN] |
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.
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.
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.
struct authority_cert_t* cert |
Vote only: the voter's certificate.
Definition at line 85 of file networkstatus_st.h.
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 networkstatus_vote_free_().
int consensus_method |
Consensus only: what method was used to produce this consensus?
Definition at line 40 of file networkstatus_st.h.
digestmap_t* desc_digest_map |
If present, a map from descriptor digest to elements of routerstatus_list.
Definition at line 100 of file networkstatus_st.h.
Referenced by router_get_descriptor_digests_in_consensus(), router_get_mutable_consensus_status_by_descriptor_digest(), and signed_descs_update_status_from_consensus_networkstatus().
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().
common_digests_t digests |
Digests of this document, as signed.
Definition at line 88 of file networkstatus_st.h.
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.
consensus_flavor_t flavor |
If a consensus, what kind?
Definition at line 28 of file networkstatus_st.h.
Referenced by count_usable_descriptors(), dirvote_add_signatures_to_pending_consensus(), microdesc_list_missing_digest256(), and networkstatus_format_signatures().
time_t fresh_until |
Time before which this is the most recent vote or consensus.
Definition at line 34 of file networkstatus_st.h.
Referenced by get_voting_interval(), and update_consensus_networkstatus_fetch_time_impl().
unsigned int has_measured_bws |
True iff this networkstatus contains measured= bandwidth values.
Definition at line 29 of file networkstatus_st.h.
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 networkstatus_vote_free_().
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 networkstatus_get_param().
smartlist_t* package_lines |
List of 'package' lines describing hashes of downloadable packages
Definition at line 45 of file networkstatus_st.h.
time_t published |
Vote only: Time when vote was written.
Definition at line 32 of file networkstatus_st.h.
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 get_nth_protocol_set_vote(), networkstatus_check_required_protocols(), and networkstatus_vote_free_().
smartlist_t* routerstatus_list |
List of router statuses, sorted by identity digest. For a vote, the elements are vote_routerstatus_t; for a consensus, the elements are routerstatus_t.
Definition at line 96 of file networkstatus_st.h.
Referenced by control_event_newconsensus(), networkstatus_vote_find_entry_idx(), networkstatus_vote_find_mutable_entry(), router_get_mutable_consensus_status_by_descriptor_digest(), and router_get_mutable_consensus_status_by_id().
networkstatus_sr_info_t sr_info |
Contains the shared random protocol data from a vote or consensus.
Definition at line 103 of file networkstatus_st.h.
Referenced by sr_get_current_for_control(), and sr_get_previous_for_control().
smartlist_t* supported_methods |
Vote only: what methods is this voter willing to use?
Definition at line 42 of file networkstatus_st.h.
networkstatus_type_t type |
Vote, consensus, or opinion?
Definition at line 27 of file networkstatus_st.h.
Referenced by extract_shared_random_commits(), get_voter(), networkstatus_add_detached_signatures(), and networkstatus_check_consensus_signature().
time_t valid_after |
Time after which this vote or consensus applies.
Definition at line 33 of file networkstatus_st.h.
Referenced by cached_client_descriptor_has_expired(), get_voting_interval(), hs_get_time_period_num(), hs_in_period_between_tp_and_srv(), mark_my_descriptor_dirty_if_too_old(), networkstatus_check_required_protocols(), networkstatus_is_live(), nodelist_ensure_freshness(), should_rotate_descriptors(), update_consensus_networkstatus_downloads(), and update_consensus_networkstatus_fetch_time_impl().
time_t valid_until |
Time after which this vote or consensus should not be used.
Definition at line 36 of file networkstatus_st.h.
Referenced by signed_descs_update_status_from_consensus_networkstatus().
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.
smartlist_t* voters |
List of networkstatus_voter_info_t. For a vote, only one element is included. For a consensus, one element is included for every voter whose vote contributed to the consensus.
Definition at line 83 of file networkstatus_st.h.
Referenced by networkstatus_get_voter_by_id().
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().