mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-27 22:03:31 +01:00
helper to test a node for matching an ed25519 ID.
This commit is contained in:
parent
3b1e04fe45
commit
424ae9e18b
@ -671,6 +671,18 @@ node_get_ed25519_id(const node_t *node)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/** Return true iff this node's Ed25519 identity matches <b>id</b>.
|
||||
* (An absent Ed25519 identity matches NULL or zero.) */
|
||||
int
|
||||
node_ed25519_id_matches(const node_t *node, const ed25519_public_key_t *id)
|
||||
{
|
||||
const ed25519_public_key_t *node_id = node_get_ed25519_id(node);
|
||||
if (node_id == NULL || ed25519_public_key_is_zero(node_id)) {
|
||||
return id == NULL || ed25519_public_key_is_zero(id);
|
||||
} else {
|
||||
return id && ed25519_pubkey_eq(node_id, id);
|
||||
}
|
||||
}
|
||||
|
||||
/** Return true iff <b>node</b> supports authenticating itself
|
||||
* by ed25519 ID during the link handshake in a way that we can understand
|
||||
|
@ -56,6 +56,8 @@ long node_get_declared_uptime(const node_t *node);
|
||||
time_t node_get_published_on(const node_t *node);
|
||||
const smartlist_t *node_get_declared_family(const node_t *node);
|
||||
const ed25519_public_key_t *node_get_ed25519_id(const node_t *node);
|
||||
int node_ed25519_id_matches(const node_t *node,
|
||||
const ed25519_public_key_t *id);
|
||||
int node_supports_ed25519_link_authentication(const node_t *node);
|
||||
const uint8_t *node_get_rsa_id_digest(const node_t *node);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user