|
Tor 0.5.0-alpha-dev
|
#include <crypt_path_st.h>
Public Member Functions | |
| relay_crypto_t | CRYPT_PATH_PRIV_FIELD (crypto) |
Data Fields | |
| uint32_t | magic |
| onion_handshake_state_t | handshake_state |
| char | rend_circ_nonce [DIGEST_LEN] |
| extend_info_t * | extend_info |
| uint8_t | state |
| struct crypt_path_t * | next |
| struct crypt_path_t * | prev |
| int | package_window |
| int | deliver_window |
| struct congestion_control_t * | ccontrol |
| relay_cell_fmt_t | relay_cell_format |
Holds accounting information for a single step in the layered encryption performed by a circuit. Used only at the client edge of a circuit.
Definition at line 53 of file crypt_path_st.h.
| relay_crypto_t CRYPT_PATH_PRIV_FIELD | ( | crypto | ) |
Private member: Cryptographic state used for encrypting and authenticating relay cells to and from this hop.
| struct congestion_control_t* ccontrol |
Congestion control info
Definition at line 87 of file crypt_path_st.h.
Referenced by circuit_ccontrol(), circuit_finish_handshake(), circuit_sent_cell_for_sendme(), congestion_control_get_control_port_fields(), congestion_control_get_package_window(), cpath_free(), edge_get_max_rtt(), edge_uses_flow_control(), finalize_rend_circuit(), and sendme_get_inc_count().
| int deliver_window |
How many cells are we willing to deliver originating at this step?
Definition at line 83 of file crypt_path_st.h.
Referenced by cpath_append_hop(), cpath_assert_layer_ok(), finalize_rend_circuit(), and sendme_circuit_consider_sending().
| extend_info_t* extend_info |
Information to extend to the OR at this step.
Definition at line 64 of file crypt_path_st.h.
Referenced by build_middle_exclude_list(), build_vanguard_middle_exclude_list(), circuit_build_failed(), circuit_cpath_supports_ntor(), circuit_find_to_cannibalize(), circuit_get_nth_node(), circuit_handle_first_hop(), circuit_list_path_impl(), circuit_send_first_onion_skin(), circuit_send_intermediate_onion_skin(), conflux_add_guards_to_exclude_list(), conflux_add_middles_to_exclude_list(), connection_ap_expire_beginning(), connection_ap_get_begincell_flags(), cpath_append_hop(), cpath_free(), get_exit_for_nonce(), link_apconn_to_circ(), onion_populate_cpath(), pathbias_count_build_attempt(), pathbias_count_build_success(), pathbias_count_circs_in_states(), pathbias_count_collapse(), pathbias_count_successful_close(), pathbias_count_timeout(), pathbias_count_use_attempt(), pathbias_count_use_failed(), pathbias_count_use_success(), and should_use_create_fast_for_circuit().
| onion_handshake_state_t handshake_state |
Current state of the handshake as performed with the OR at this step.
Definition at line 58 of file crypt_path_st.h.
Referenced by circuit_finish_handshake(), circuit_send_first_onion_skin(), circuit_send_intermediate_onion_skin(), and cpath_free().
| uint32_t magic |
Definition at line 54 of file crypt_path_st.h.
| struct crypt_path_t* next |
Link to next crypt_path_t in the circuit. (The list is circular, so the last node links to the first.)
Definition at line 75 of file crypt_path_st.h.
Referenced by build_middle_exclude_list(), build_vanguard_middle_exclude_list(), circuit_clear_cpath(), circuit_cpath_supports_ntor(), circuit_find_to_cannibalize(), circuit_get_cpath_hop(), circuit_get_cpath_len(), circuit_get_cpath_opened_len(), circuit_list_path_impl(), conflux_add_middles_to_exclude_list(), cpath_assert_ok(), cpath_extend_linked_list(), cpath_get_next_non_open_hop(), cpath_is_on_circuit(), pathbias_is_new_circ_attempt(), and relay_decrypt_cell().
| int package_window |
How many cells are we allowed to originate ending at this step?
Definition at line 81 of file crypt_path_st.h.
Referenced by circuit_consider_stop_edge_reading(), circuit_sent_cell_for_sendme(), congestion_control_get_package_window(), cpath_append_hop(), cpath_assert_layer_ok(), finalize_rend_circuit(), and sendme_process_circuit_level_impl().
| struct crypt_path_t* prev |
Link to previous crypt_path_t in the circuit.
Definition at line 78 of file crypt_path_st.h.
Referenced by circuit_build_failed(), circuit_ccontrol(), circuit_get_package_window(), circuit_send_intermediate_onion_skin(), conflux_get_destination_hop(), congestion_control_get_control_port_fields(), connection_exit_begin_conn(), cpath_assert_ok(), cpath_extend_linked_list(), edge_uses_cpath(), get_exit_for_nonce(), handle_hs_exit_conn(), hs_circ_send_establish_rendezvous(), hs_circ_send_introduce1(), hs_circ_service_rp_has_opened(), link_apconn_to_circ(), linked_update_stream_backpointers(), pathbias_send_usable_probe(), relay_crypt_from_last_hop(), relay_encrypt_cell_outbound(), rend_process_relay_cell(), router_perform_bandwidth_test(), and send_establish_intro().
| relay_cell_fmt_t relay_cell_format |
Format to use when exchanging relay cells with this relay.
Definition at line 90 of file crypt_path_st.h.
Referenced by circuit_finish_handshake(), circuit_get_relay_format(), cpath_append_hop(), and create_rend_cpath().
| char rend_circ_nonce[DIGEST_LEN] |
Negotiated key material shared with the OR at this step.
Definition at line 61 of file crypt_path_st.h.
Referenced by circuit_finish_handshake(), and send_establish_intro().
| uint8_t state |
Is the circuit built to this step? Must be one of:
Definition at line 71 of file crypt_path_st.h.
Referenced by circpad_send_command_to_hop(), circuit_build_failed(), circuit_build_times_mark_circ_as_measurement_only(), circuit_expire_building(), circuit_finish_handshake(), circuit_get_cpath_opened_len(), circuit_get_nth_node(), circuit_list_path_impl(), circuit_send_first_onion_skin(), circuit_send_intermediate_onion_skin(), circuit_send_next_onion_skin(), cpath_append_hop(), cpath_assert_layer_ok(), cpath_assert_ok(), cpath_get_next_non_open_hop(), finalize_rend_circuit(), link_apconn_to_circ(), pathbias_is_new_circ_attempt(), pathbias_send_usable_probe(), and relay_decrypt_cell().