From fbdd32ebe9021d34dbe314a9cb24480ff3a9c9b1 Mon Sep 17 00:00:00 2001 From: cypherpunks Date: Wed, 9 Dec 2015 13:07:35 +0100 Subject: [PATCH] Mention the expected length of the digests Some functions that use digest maps did not mention that the digests are expected to have DIGEST_LEN bytes. This lead to buffer over-reads in the past. --- src/or/rendcache.c | 6 +++--- src/or/routerlist.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/or/rendcache.c b/src/or/rendcache.c index 790e0c246d..c69671e289 100644 --- a/src/or/rendcache.c +++ b/src/or/rendcache.c @@ -321,9 +321,9 @@ rend_cache_failure_purge(void) } /** Lookup the rend failure cache using a relay identity digest in - * identity and service ID service_id. If found, the intro - * failure is set in intro_entry else it stays untouched. Return 1 - * iff found else 0. */ + * identity which has DIGEST_LEN bytes and service ID service_id + * which is a null-terminated string. If found, the intro failure is set in + * intro_entry else it stays untouched. Return 1 iff found else 0. */ STATIC int cache_failure_intro_lookup(const uint8_t *identity, const char *service_id, rend_cache_failure_intro_t **intro_entry) diff --git a/src/or/routerlist.c b/src/or/routerlist.c index 08911b96a7..814551521e 100644 --- a/src/or/routerlist.c +++ b/src/or/routerlist.c @@ -4034,9 +4034,9 @@ router_exit_policy_rejects_all(const routerinfo_t *router) } /** Create an directory server at address:port, with OR identity - * key digest. If address is NULL, add ourself. If - * is_authority, this is a directory authority. Return the new - * directory server entry on success or NULL on failure. */ + * key digest which has DIGEST_LEN bytes. If address is NULL, + * add ourself. If is_authority, this is a directory authority. Return + * the new directory server entry on success or NULL on failure. */ static dir_server_t * dir_server_new(int is_authority, const char *nickname, -- 2.47.3