[tor-commits] [tor/master] Mention the expected length of the digests

nickm at torproject.org nickm at torproject.org
Wed Dec 9 15:36:17 UTC 2015


commit fbdd32ebe9021d34dbe314a9cb24480ff3a9c9b1
Author: cypherpunks <cypherpunks at torproject.org>
Date:   Wed Dec 9 13:07:35 2015 +0100

    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 790e0c2..c69671e 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
- * <b>identity</b> and service ID <b>service_id</b>. If found, the intro
- * failure is set in <b>intro_entry</b> else it stays untouched. Return 1
- * iff found else 0. */
+ * <b>identity</b> which has DIGEST_LEN bytes and service ID <b>service_id</b>
+ * which is a null-terminated string. If found, the intro failure is set in
+ * <b>intro_entry</b> 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 08911b9..8145515 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 <b>address</b>:<b>port</b>, with OR identity
- * key <b>digest</b>.  If <b>address</b> is NULL, add ourself.  If
- * <b>is_authority</b>, this is a directory authority.  Return the new
- * directory server entry on success or NULL on failure. */
+ * key <b>digest</b> which has DIGEST_LEN bytes.  If <b>address</b> is NULL,
+ * add ourself.  If <b>is_authority</b>, 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,





More information about the tor-commits mailing list