|
Tor 0.4.9.3-alpha-dev
|
#include <routerinfo_st.h>
Data Fields | |
| signed_descriptor_t | cache_info |
| char * | nickname |
| tor_addr_t | ipv4_addr |
| uint16_t | ipv4_orport |
| uint16_t | ipv4_dirport |
| tor_addr_t | ipv6_addr |
| uint16_t | ipv6_orport |
| char * | tap_onion_pkey |
| size_t | tap_onion_pkey_len |
| crypto_pk_t * | identity_pkey |
| struct curve25519_public_key_t * | onion_curve25519_pkey |
| time_t | cert_expiration_time |
| char * | platform |
| char * | protocol_list |
| uint32_t | bandwidthrate |
| uint32_t | bandwidthburst |
| uint32_t | bandwidthcapacity |
| smartlist_t * | exit_policy |
| struct short_policy_t * | ipv6_exit_policy |
| long | uptime |
| smartlist_t * | declared_family |
| struct smartlist_t * | family_ids |
| char * | contact_info |
| unsigned int | is_hibernating:1 |
| unsigned int | caches_extra_info:1 |
| unsigned int | allow_single_hop_exits:1 |
| unsigned int | wants_to_be_hs_dir:1 |
| unsigned int | policy_is_reject_star:1 |
| unsigned int | needs_retest_if_added:1 |
| unsigned int | supports_tunnelled_dir_requests:1 |
| unsigned int | omit_from_vote:1 |
| protover_summary_flags_t | pv |
| uint8_t | purpose |
Information about another onion router in the network.
Definition at line 21 of file routerinfo_st.h.
| unsigned int allow_single_hop_exits |
Whether the router says it allows single hop exits.
Definition at line 80 of file routerinfo_st.h.
Referenced by node_allows_single_hop_exits(), and router_parse_entry_from_string().
| uint32_t bandwidthburst |
How large is this OR's token bucket?
Definition at line 60 of file routerinfo_st.h.
Referenced by router_build_fresh_unsigned_routerinfo(), router_differences_are_cosmetic(), router_dump_router_to_string(), and router_parse_entry_from_string().
| uint32_t bandwidthcapacity |
How many bytes/s is this router known to handle?
Definition at line 62 of file routerinfo_st.h.
Referenced by bridge_get_advertised_bandwidth_bounded(), check_descriptor_bandwidth_changed(), check_for_reachability_bw_callback(), router_build_fresh_unsigned_routerinfo(), router_differences_are_cosmetic(), router_dump_router_to_string(), router_get_advertised_bandwidth(), router_get_advertised_bandwidth_capped(), and router_parse_entry_from_string().
| uint32_t bandwidthrate |
How many bytes does this OR add to its token bucket per second?
Definition at line 58 of file routerinfo_st.h.
Referenced by bridge_get_advertised_bandwidth_bounded(), check_for_reachability_bw_callback(), router_build_fresh_unsigned_routerinfo(), router_differences_are_cosmetic(), router_dump_router_to_string(), router_get_advertised_bandwidth(), router_get_advertised_bandwidth_capped(), and router_parse_entry_from_string().
| signed_descriptor_t cache_info |
Definition at line 22 of file routerinfo_st.h.
| unsigned int caches_extra_info |
Whether the router says it caches and serves extrainfo documents.
Definition at line 78 of file routerinfo_st.h.
Referenced by router_parse_entry_from_string(), and router_supports_extrainfo().
| time_t cert_expiration_time |
What's the earliest expiration time on all the certs in this routerinfo?
Definition at line 50 of file routerinfo_st.h.
Referenced by router_add_to_routerlist(), router_parse_entry_from_string(), and update_consensus_router_descriptor_downloads().
| char* contact_info |
Declared contact info for this router.
Definition at line 75 of file routerinfo_st.h.
Referenced by authdir_wants_to_reject_router(), esc_router_info(), router_differences_are_cosmetic(), router_parse_entry_from_string(), and routerinfo_free_().
| smartlist_t* declared_family |
Nicknames of router which this router claims are its family.
Definition at line 69 of file routerinfo_st.h.
Referenced by dirvote_create_microdescriptor(), node_family_list_contains(), node_has_declared_family_list(), node_lookup_declared_family_list(), router_build_fresh_unsigned_routerinfo(), router_differences_are_cosmetic(), router_dump_router_to_string(), router_parse_entry_from_string(), and routerinfo_free_().
| smartlist_t* exit_policy |
What streams will this OR permit to exit on IPv4? NULL for 'reject *:*'.
Definition at line 63 of file routerinfo_st.h.
Referenced by compare_tor_addr_to_node_policy(), dirserv_compute_performance_thresholds(), dirvote_create_microdescriptor(), router_add_exit_policy(), router_build_fresh_unsigned_routerinfo(), router_compare_to_my_exit_policy(), router_differences_are_cosmetic(), router_dump_exit_policy_to_string(), router_dump_router_to_string(), router_parse_entry_from_string(), routerinfo_free_(), and routerstatus_format_entry().
| struct smartlist_t* family_ids |
A list of strings representing router family IDs. May be null. Extracted from family-certs. (Happy families only.)
Definition at line 74 of file routerinfo_st.h.
Referenced by dirvote_create_microdescriptor(), node_get_family_ids(), router_parse_entry_from_string(), and routerinfo_free_().
| crypto_pk_t* identity_pkey |
Public RSA key for signing.
Definition at line 45 of file routerinfo_st.h.
Referenced by bridgeauth_dump_bridge_status_to_file(), dirserv_add_extrainfo(), dirserv_router_get_status(), extrainfo_insert(), extrainfo_parse_entry_from_string(), router_build_fresh_descriptor(), router_build_fresh_unsigned_routerinfo(), router_differences_are_cosmetic(), router_dump_router_to_string(), router_parse_entry_from_string(), and routerinfo_free_().
| tor_addr_t ipv4_addr |
A router's IPv4 address.
Definition at line 26 of file routerinfo_st.h.
Referenced by channel_tls_process_netinfo_cell(), check_descriptor_ipaddress_changed(), compare_routerinfo_addrs_by_family(), connection_or_send_netinfo(), dirserv_router_get_status(), dirserv_router_has_valid_address(), dirserv_single_reachability_test(), getinfo_helper_policies(), node_add_to_address_set(), node_describe(), node_get_prim_addr_ipv4(), node_is_a_configured_bridge(), node_set_country(), reachability_warnings_callback(), reachable_addr_allows_ri_impl(), rewrite_node_address_for_bridge(), router_addr_is_my_published_addr(), router_build_fresh_unsigned_routerinfo(), router_describe(), router_differences_are_cosmetic(), router_dump_router_to_string(), router_get_orport(), router_parse_entry_from_string(), routers_have_same_or_addrs(), routerset_contains_router(), and set_routerstatus_from_routerinfo().
| uint16_t ipv4_dirport |
Definition at line 28 of file routerinfo_st.h.
| uint16_t ipv4_orport |
Definition at line 27 of file routerinfo_st.h.
| tor_addr_t ipv6_addr |
A router's IPv6 address, if it has one.
Definition at line 31 of file routerinfo_st.h.
Referenced by channel_tls_process_netinfo_cell(), check_descriptor_ipaddress_changed(), compare_routerinfo_addrs_by_family(), connection_or_send_netinfo(), dirserv_router_has_valid_address(), dirserv_set_router_is_running(), dirserv_single_reachability_test(), getinfo_helper_policies(), node_add_to_address_set(), node_describe(), node_get_pref_ipv6_dirport(), node_get_pref_ipv6_orport(), node_is_a_configured_bridge(), reachability_warnings_callback(), reachable_addr_allows_ri_impl(), rewrite_node_address_for_bridge(), router_addr_is_my_published_addr(), router_build_fresh_unsigned_routerinfo(), router_describe(), router_differences_are_cosmetic(), router_dump_router_to_string(), router_get_orport(), router_parse_entry_from_string(), routers_have_same_or_addrs(), routerset_contains_router(), and set_routerstatus_from_routerinfo().
| struct short_policy_t* ipv6_exit_policy |
What streams will this OR permit to exit on IPv6? NULL for 'reject *:*'
Definition at line 67 of file routerinfo_st.h.
Referenced by compare_tor_addr_to_node_policy(), dirvote_create_microdescriptor(), router_build_fresh_unsigned_routerinfo(), router_compare_to_my_exit_policy(), router_dump_router_to_string(), router_parse_entry_from_string(), and routerinfo_free_().
| uint16_t ipv6_orport |
Definition at line 32 of file routerinfo_st.h.
| unsigned int is_hibernating |
Whether the router claims to be hibernating
Definition at line 76 of file routerinfo_st.h.
Referenced by dirserv_set_router_is_running(), dirserv_should_launch_reachability_test(), router_differences_are_cosmetic(), router_is_active(), and router_parse_entry_from_string().
| unsigned int needs_retest_if_added |
True if, after we have added this router, we should re-launch tests for it.
Definition at line 89 of file routerinfo_st.h.
Referenced by dirserv_add_descriptor().
| char* nickname |
Human-readable OR name.
Definition at line 23 of file routerinfo_st.h.
Referenced by dirserv_add_descriptor(), dirserv_router_get_status(), dirserv_single_reachability_test(), extend_info_from_node(), extend_info_from_router(), learned_bridge_descriptor(), node_describe(), node_get_nickname(), rewrite_node_address_for_bridge(), router_build_fresh_unsigned_routerinfo(), router_describe(), router_differences_are_cosmetic(), router_dump_router_to_string(), router_get_verbose_nickname(), router_parse_entry_from_string(), routerinfo_free_(), routerset_contains_router(), and set_routerstatus_from_routerinfo().
| unsigned int omit_from_vote |
Used during voting to indicate that we should not include an entry for this routerinfo. Used only during voting.
Definition at line 98 of file routerinfo_st.h.
Referenced by routers_make_ed_keys_unique().
| struct curve25519_public_key_t* onion_curve25519_pkey |
Public curve25519 key for onions
Definition at line 47 of file routerinfo_st.h.
Referenced by dirvote_create_microdescriptor(), extend_info_from_router(), node_get_curve25519_onion_key(), router_build_fresh_unsigned_routerinfo(), router_dump_router_to_string(), router_parse_entry_from_string(), and routerinfo_free_().
| char* platform |
What software/operating system is this OR using?
Definition at line 52 of file routerinfo_st.h.
Referenced by dirserv_add_descriptor(), dirserv_router_get_status(), esc_router_info(), node_get_platform(), router_build_fresh_unsigned_routerinfo(), router_differences_are_cosmetic(), router_dump_router_to_string(), router_parse_entry_from_string(), and routerinfo_free_().
| unsigned int policy_is_reject_star |
True iff the exit policy for this router rejects everything.
Definition at line 85 of file routerinfo_st.h.
Referenced by node_exit_policy_rejects_all(), router_build_fresh_unsigned_routerinfo(), router_dump_exit_policy_to_string(), router_exit_policy_rejects_all(), router_my_exit_policy_is_reject_star(), and router_parse_entry_from_string().
| char* protocol_list |
Encoded list of subprotocol versions supported by this OR
Definition at line 54 of file routerinfo_st.h.
Referenced by router_build_fresh_unsigned_routerinfo(), router_dump_router_to_string(), router_parse_entry_from_string(), and routerinfo_free_().
| uint8_t purpose |
In what way did we find out about this router? One of ROUTER_PURPOSE_*. Routers of different purposes are kept segregated and used for different things; see notes on ROUTER_PURPOSE_* macros above.
Definition at line 123 of file routerinfo_st.h.
Referenced by dirserv_orconn_tls_done(), dirserv_set_bridges_running(), dirserv_should_launch_reachability_test(), handle_get_descriptor(), learned_bridge_descriptor(), node_get_purpose(), nodelist_set_consensus(), router_add_to_routerlist(), router_build_fresh_unsigned_routerinfo(), router_differences_are_cosmetic(), router_load_single_router(), router_parse_entry_from_string(), router_parse_list_from_string(), routerlist_insert_old(), routerlist_remove(), routerlist_replace(), and signed_descriptor_from_routerinfo().
Flags to summarize the protocol versions for this routerinfo_t.
Definition at line 101 of file routerinfo_st.h.
Referenced by extend_info_from_node(), node_get_protover_summary_flags(), and router_parse_entry_from_string().
| unsigned int supports_tunnelled_dir_requests |
True iff this router included "tunnelled-dir-server" in its descriptor, implying it accepts tunnelled directory requests, or it advertised dir_port > 0.
Definition at line 94 of file routerinfo_st.h.
Referenced by dirauth_set_routerstatus_from_routerinfo(), dirclient_fetches_from_authorities(), dirserv_thinks_router_is_hs_dir(), node_is_dir(), router_build_fresh_unsigned_routerinfo(), router_differences_are_cosmetic(), router_dump_router_to_string(), router_parse_entry_from_string(), and set_routerstatus_from_routerinfo().
| char* tap_onion_pkey |
Public RSA TAP key for onions, ASN.1 encoded. We store this in its encoded format since storing it as a crypto_pk_t uses significantly more memory.
This may be absent.
Definition at line 41 of file routerinfo_st.h.
Referenced by dirserv_add_descriptor(), dirvote_create_microdescriptor(), router_build_fresh_unsigned_routerinfo(), router_dump_router_to_string(), router_parse_entry_from_string(), router_tap_onion_keys_eq(), and routerinfo_free_().
| size_t tap_onion_pkey_len |
Length of onion_pkey, in bytes.
Definition at line 43 of file routerinfo_st.h.
Referenced by dirvote_create_microdescriptor(), router_build_fresh_unsigned_routerinfo(), router_dump_router_to_string(), router_parse_entry_from_string(), and router_tap_onion_keys_eq().
| long uptime |
How many seconds the router claims to have been up
Definition at line 68 of file routerinfo_st.h.
Referenced by node_get_declared_uptime(), real_uptime(), router_differences_are_cosmetic(), and router_parse_entry_from_string().
| unsigned int wants_to_be_hs_dir |
True iff this router claims to be a hidden service directory.
Definition at line 83 of file routerinfo_st.h.
Referenced by dirserv_thinks_router_is_hs_dir(), and router_parse_entry_from_string().