]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Merge branch 'bug30916_035' into bug30916_041
authorNick Mathewson <nickm@torproject.org>
Wed, 18 Sep 2019 15:19:41 +0000 (11:19 -0400)
committerNick Mathewson <nickm@torproject.org>
Wed, 18 Sep 2019 15:19:41 +0000 (11:19 -0400)
1  2 
src/feature/relay/router.c

index 25bb1835c210414ec98a779cf7ee516e4014099f,1dbaf2ed66c58aa95224d360f269a75b2fbdc97c..e2ba51a5b79077ce2f099061f93f568b9a14591d
@@@ -284,19 -278,17 +284,17 @@@ construct_ntor_key_map(void
  {
    di_digest256_map_t *m = NULL;
  
-   if (!fast_mem_is_zero((const char*)
-                        curve25519_onion_key.pubkey.public_key,
-                        CURVE25519_PUBKEY_LEN)) {
-     dimap_add_entry(&m,
-                     curve25519_onion_key.pubkey.public_key,
+   const uint8_t *cur_pk = curve25519_onion_key.pubkey.public_key;
+   const uint8_t *last_pk = last_curve25519_onion_key.pubkey.public_key;
 -  if (!tor_mem_is_zero((const char *)cur_pk, CURVE25519_PUBKEY_LEN)) {
++  if (!fast_mem_is_zero((const char *)cur_pk, CURVE25519_PUBKEY_LEN)) {
+     dimap_add_entry(&m, cur_pk,
                      tor_memdup(&curve25519_onion_key,
                                 sizeof(curve25519_keypair_t)));
    }
-   if (!fast_mem_is_zero((const char*)
-                           last_curve25519_onion_key.pubkey.public_key,
-                        CURVE25519_PUBKEY_LEN)) {
-     dimap_add_entry(&m,
-                     last_curve25519_onion_key.pubkey.public_key,
 -  if (!tor_mem_is_zero((const char*)last_pk, CURVE25519_PUBKEY_LEN) &&
++  if (!fast_mem_is_zero((const char*)last_pk, CURVE25519_PUBKEY_LEN) &&
+       tor_memneq(cur_pk, last_pk, CURVE25519_PUBKEY_LEN)) {
+     dimap_add_entry(&m, last_pk,
                      tor_memdup(&last_curve25519_onion_key,
                                 sizeof(curve25519_keypair_t)));
    }