From: Neel Chauhan Date: Wed, 8 Nov 2017 23:33:30 +0000 (-0500) Subject: Introduce node_get_curve25519_onion_key() X-Git-Tag: tor-0.3.3.1-alpha~234^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0ee50a414cb970a4ce192075c6414dbfbdb0b0db;p=thirdparty%2Ftor.git Introduce node_get_curve25519_onion_key() --- diff --git a/src/or/nodelist.c b/src/or/nodelist.c index f2e979be8b..bcd5fa6b85 100644 --- a/src/or/nodelist.c +++ b/src/or/nodelist.c @@ -1633,6 +1633,18 @@ node_has_curve25519_onion_key(const node_t *node) return 0; } +/** Return the curve25519 key of node, or NULL if none. */ +curve25519_public_key_t * +node_get_curve25519_onion_key(const node_t *node) +{ + if (node->ri) + return node->ri->onion_curve25519_pkey; + else if (node->md) + return node->md->onion_curve25519_pkey; + else + return NULL; +} + /** Refresh the country code of ri. This function MUST be called on * each router when the GeoIP database is reloaded, and on all new routers. */ void diff --git a/src/or/nodelist.h b/src/or/nodelist.h index 754990ac8d..0ff5ecca02 100644 --- a/src/or/nodelist.h +++ b/src/or/nodelist.h @@ -85,6 +85,7 @@ int node_get_prim_dirport(const node_t *node, tor_addr_port_t *ap_out); void node_get_pref_dirport(const node_t *node, tor_addr_port_t *ap_out); void node_get_pref_ipv6_dirport(const node_t *node, tor_addr_port_t *ap_out); int node_has_curve25519_onion_key(const node_t *node); +curve25519_public_key_t *node_get_curve25519_onion_key(const node_t *node); MOCK_DECL(smartlist_t *, nodelist_get_list, (void));