tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit 53f350182e60b32791b23ea98368a41037bffd0d
parent 5865e56ec083bbccd46bf71a9343b3744f0c4ecc
Author: teor <teor2345@gmail.com>
Date:   Sun, 24 Dec 2017 19:47:42 +1100

Expand comments in node_get_ed25519_id() and put them near the relevant code

And add a changes file.

Follow-up to 24001.

Diffstat:
Achanges/ticket24001 | 4++++
Msrc/or/nodelist.c | 6+++++-
2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/changes/ticket24001 b/changes/ticket24001 @@ -0,0 +1,4 @@ + o Minor features (code correctness, descriptors): + - Check that microdesc ed25519 ids are non-zero in node_get_ed25519_id(), + before returning them. + Implements 24001, patch by "aruna1234". diff --git a/src/or/nodelist.c b/src/or/nodelist.c @@ -908,18 +908,22 @@ node_get_ed25519_id(const node_t *node) { const ed25519_public_key_t *ri_pk = NULL; const ed25519_public_key_t *md_pk = NULL; + if (node->ri) { if (node->ri->cache_info.signing_key_cert) { ri_pk = &node->ri->cache_info.signing_key_cert->signing_key; + /* Checking whether routerinfo ed25519 is all zero. + * Our descriptor parser should make sure this never happens. */ if (BUG(ed25519_public_key_is_zero(ri_pk))) ri_pk = NULL; } } -/* Checking whether microdesc_ed25519() is all zero*/ if (node->md) { if (node->md->ed25519_identity_pkey) { md_pk = node->md->ed25519_identity_pkey; + /* Checking whether microdesc ed25519 is all zero. + * Our descriptor parser should make sure this never happens. */ if (BUG(ed25519_public_key_is_zero(md_pk))) md_pk = NULL; }