15 #include "testsupport.h" 17 #define TOR_ROUTERINFO_ERROR_NO_EXT_ADDR (-1) 18 #define TOR_ROUTERINFO_ERROR_CANNOT_PARSE (-2) 19 #define TOR_ROUTERINFO_ERROR_NOT_A_SERVER (-3) 20 #define TOR_ROUTERINFO_ERROR_DIGEST_FAILED (-4) 21 #define TOR_ROUTERINFO_ERROR_CANNOT_GENERATE (-5) 22 #define TOR_ROUTERINFO_ERROR_DESC_REBUILDING (-6) 40 int severity,
int log_greeting);
47 #define ntor_key_map_free(map) \ 48 FREE_AND_NULL(di_digest256_map_t, ntor_key_map_free_, (map)) 52 int init_keys_client(
void);
81 MOCK_DECL(
int, advertised_server_mode, (
void));
94 MOCK_DECL(
int, router_my_exit_policy_is_reject_star,(
void));
121 void router_get_pref_ipv6_orport(
const routerinfo_t *router,
152 #ifdef ROUTER_PRIVATE crypto_pk_t * get_my_v3_authority_signing_key(void)
Definition: router.c:413
int router_has_addr(const routerinfo_t *router, const tor_addr_t *addr)
Definition: router.c:3229
const char * router_get_my_descriptor(void)
Definition: router.c:2123
authority_cert_t * get_my_v3_legacy_cert(void)
Definition: router.c:422
int client_identity_key_is_set(void)
Definition: router.c:397
Definition: crypto_ed25519.h:39
const char * routerstatus_describe(const routerstatus_t *ri)
Definition: router.c:3677
const char * node_describe(const node_t *node)
Definition: router.c:3644
int router_build_fresh_descriptor(routerinfo_t **r, extrainfo_t **e)
Definition: router.c:2281
void dup_onion_keys(crypto_pk_t **key, crypto_pk_t **last)
Definition: router.c:200
int router_initialize_tls_context(void)
Definition: router.c:848
const uint8_t * router_get_my_id_digest(void)
Definition: router.c:2048
int router_compare_to_my_exit_policy(const tor_addr_t *addr, uint16_t port)
Definition: router.c:1994
void router_perform_bandwidth_test(int num_circs, time_t now)
Definition: router.c:1626
int dir_server_mode(const or_options_t *options)
Definition: router.c:1387
void check_descriptor_ipaddress_changed(time_t now)
Definition: router.c:2683
extrainfo_t * router_get_my_extrainfo(void)
Definition: router.c:2140
int init_keys(void)
Definition: router.c:983
int router_is_me(const routerinfo_t *router)
Definition: router.c:2069
int authdir_mode_tests_reachability(const or_options_t *options)
Definition: router.c:1709
void router_new_address_suggestion(const char *suggestion, const dir_connection_t *d_conn)
Definition: router.c:2731
crypto_pk_t * get_onion_key(void)
Definition: router.c:189
MOCK_DECL(int, router_have_minimum_dir_info,(void))
void router_upload_dir_desc_to_dirservers(int force)
Definition: router.c:1948
int check_whether_orport_reachable(const or_options_t *options)
Definition: router.c:1269
int should_refuse_unknown_exits(const or_options_t *options)
Definition: router.c:1744
void expire_old_onion_keys(void)
Definition: router.c:224
int authdir_mode(const or_options_t *options)
Definition: router.c:1675
Definition: container.h:18
int authdir_mode_publishes_statuses(const or_options_t *options)
Definition: router.c:1699
crypto_pk_t * init_key_from_file(const char *fname, int generate, int severity, int log_greeting)
Definition: router.c:537
uint16_t router_get_advertised_dir_port(const or_options_t *options, uint16_t dirport)
Definition: router.c:1909
void router_reset_reachability(void)
Definition: router.c:1243
const char * extend_info_describe(const extend_info_t *ei)
Definition: router.c:3697
int is_legal_nickname_or_hexdigest(const char *s)
Definition: router.c:3531
int proxy_mode(const or_options_t *options)
Definition: router.c:1776
STATIC void get_platform_str(char *platform, size_t len)
Definition: router.c:2807
smartlist_t * router_get_all_orports(const routerinfo_t *ri)
Definition: router.c:3800
time_t get_onion_key_set_at(void)
Definition: router.c:317
uint8_t router_purpose_from_string(const char *s)
Definition: router.c:3758
int authdir_mode_bridge(const or_options_t *options)
Definition: router.c:1717
int net_is_completely_disabled(void)
Definition: router.c:1666
crypto_pk_t * get_tlsclient_identity_key(void)
Definition: router.c:388
int router_rebuild_descriptor(int force)
Definition: router.c:2523
int authdir_mode_handles_descs(const or_options_t *options, int purpose)
Definition: router.c:1684
char * router_dump_router_to_string(routerinfo_t *router, const crypto_pk_t *ident_key, const crypto_pk_t *tap_key, const curve25519_keypair_t *ntor_keypair, const ed25519_keypair_t *signing_keypair)
Definition: router.c:2824
uint16_t router_get_active_listener_port_by_type_af(int listener_type, sa_family_t family)
Definition: router.c:1858
const char * routerinfo_err_to_string(int err)
Definition: router.c:121
void set_client_identity_key(crypto_pk_t *k)
Definition: router.c:378
int net_is_disabled(void)
Definition: router.c:1657
int router_digest_is_me(const char *digest)
Definition: router.c:2040
void router_reset_warnings(void)
Definition: router.c:3731
Definition: crypto_curve25519.h:38
void router_free_all(void)
Definition: router.c:3772
STATIC int router_write_fingerprint(int hashed)
Definition: router.c:886
crypto_pk_t * get_my_v3_legacy_signing_key(void)
Definition: router.c:430
void set_server_identity_key(crypto_pk_t *k)
Definition: router.c:325
void rotate_onion_key(void)
Definition: router.c:443
void router_get_prim_orport(const routerinfo_t *router, tor_addr_port_t *addr_port_out)
Definition: router.c:3219
char * router_dump_exit_policy_to_string(const routerinfo_t *router, int include_ipv4, int include_ipv6)
Definition: router.c:3203
int server_identity_key_is_set(void)
Definition: router.c:370
const char * router_get_descriptor_gen_reason(void)
Definition: router.c:2152
di_digest256_map_t * construct_ntor_key_map(void)
Definition: router.c:271
void router_get_verbose_nickname(char *buf, const routerinfo_t *router)
Definition: router.c:3719
void router_do_reachability_checks(int test_or, int test_dir)
Definition: router.c:1521
Definition: crypto_rsa.c:41
int is_legal_hexdigest(const char *s)
Definition: router.c:3545
int get_onion_key_lifetime(void)
Definition: router.c:824
void consider_publishable_server(int force)
Definition: router.c:1836
crypto_pk_t * get_server_identity_key(void)
Definition: router.c:359
void mark_my_descriptor_dirty(const char *reason)
Definition: router.c:2611
int is_legal_nickname(const char *s)
Definition: router.c:3519
int get_onion_key_grace_period(void)
Definition: router.c:834
int router_extrainfo_digest_is_me(const char *digest)
Definition: router.c:2056
void ntor_key_map_free_(di_digest256_map_t *map)
Definition: router.c:305
uint16_t router_get_advertised_or_port(const or_options_t *options)
Definition: router.c:1879
const char * router_purpose_to_string(uint8_t p)
Definition: router.c:3743
void check_descriptor_bandwidth_changed(time_t now)
Definition: router.c:2629
int check_whether_dirport_reachable(const or_options_t *options)
Definition: router.c:1286
void mark_my_descriptor_dirty_if_too_old(time_t now)
Definition: router.c:2574
void router_orport_found_reachable(void)
Definition: router.c:1569
int extrainfo_dump_to_string(char **s, extrainfo_t *extrainfo, crypto_pk_t *ident_key, const ed25519_keypair_t *signing_keypair)
Definition: router.c:3304
void router_dirport_found_reachable(void)
Definition: router.c:1596
int routerinfo_err_is_transient(int err)
Definition: router.c:148
const char * router_describe(const routerinfo_t *ri)
Definition: router.c:3624
uint16_t router_get_advertised_or_port_by_af(const or_options_t *options, sa_family_t family)
Definition: router.c:1887
void v3_authority_check_key_expiry(void)
Definition: router.c:761