12 #ifndef TOR_CORE_OR_EXTENDINFO_H
13 #define TOR_CORE_OR_EXTENDINFO_H
16 const char *rsa_id_digest,
24 #define extend_info_free(info) \
25 FREE_AND_NULL(extend_info_t, extend_info_free_, (info))
29 int extend_info_has_preferred_onion_key(
const extend_info_t* ei);
extend_info_t * extend_info_new(const char *nickname, const char *rsa_id_digest, const ed25519_public_key_t *ed_id, crypto_pk_t *onion_key, const curve25519_public_key_t *ntor_key, const tor_addr_t *addr, uint16_t port)
void extend_info_free_(extend_info_t *info)
const tor_addr_port_t * extend_info_get_orport(const extend_info_t *ei, int family)
int extend_info_add_orport(extend_info_t *ei, const tor_addr_t *addr, uint16_t port)
const tor_addr_port_t * extend_info_pick_orport(const extend_info_t *ei)
bool extend_info_any_orport_addr_is_internal(const extend_info_t *ei)
extend_info_t * extend_info_dup(extend_info_t *info)
bool extend_info_has_orport(const extend_info_t *ei, const tor_addr_t *addr, uint16_t port)
extend_info_t * extend_info_from_node(const node_t *r, int for_direct_connect)
int extend_info_addr_is_allowed(const tor_addr_t *addr)