[tor-commits] [tor] 06/08: Move published_on from routerstatus_t to vote_routerstatus_t.

gitolite role git at cupani.torproject.org
Mon May 16 12:55:08 UTC 2022


This is an automated email from the git hooks/post-receive script.

dgoulet pushed a commit to branch main
in repository tor.

commit 1d2c918dfdfc1356890775bc57358b3523830224
Author: Nick Mathewson <nickm at torproject.org>
AuthorDate: Tue Nov 9 13:29:36 2021 -0500

    Move published_on from routerstatus_t to vote_routerstatus_t.
    
    Nothing breaks here, since all non-voting users of
    routerstatus_t.published_on have been adjusted or removed in
    previous commits.
    
    We have to expand the API of routerstatus_format_entry() a bit,
    though, so that it can always get a published time as argument,
    since it can't get it from the routerstatus any more.
    
    This should have no effect on voter behavior.
---
 src/feature/dirauth/dirvote.c               | 22 ++++++++++++----------
 src/feature/dirparse/ns_parse.c             |  5 ++++-
 src/feature/nodelist/fmt_routerstatus.c     | 16 ++++++++++++++--
 src/feature/nodelist/fmt_routerstatus.h     |  3 ++-
 src/feature/nodelist/networkstatus.c        |  3 +--
 src/feature/nodelist/routerstatus_st.h      |  1 -
 src/feature/nodelist/vote_routerstatus_st.h |  1 +
 src/test/test_dir.c                         | 23 +++++++++++------------
 src/test/test_dir_common.c                  |  8 ++++----
 src/test/test_nodelist.c                    |  8 ++------
 src/test/test_router.c                      | 14 +-------------
 src/test/test_voting_flags.c                |  4 ----
 12 files changed, 52 insertions(+), 56 deletions(-)

diff --git a/src/feature/dirauth/dirvote.c b/src/feature/dirauth/dirvote.c
index cdd2c132ef..71f059dbc8 100644
--- a/src/feature/dirauth/dirvote.c
+++ b/src/feature/dirauth/dirvote.c
@@ -390,7 +390,8 @@ format_networkstatus_vote(crypto_pk_t *private_signing_key,
     rsf = routerstatus_format_entry(&vrs->status,
                                     vrs->version, vrs->protocols,
                                     NS_V3_VOTE,
-                                    vrs);
+                                    vrs,
+                                    -1);
     if (rsf)
       smartlist_add(chunks, rsf);
 
@@ -618,8 +619,8 @@ compare_vote_rs(const vote_routerstatus_t *a, const vote_routerstatus_t *b)
    * the descriptor digests matched, so somebody is making SHA1 collisions.
    */
 #define CMP_FIELD(utype, itype, field) do {                             \
-    utype aval = (utype) (itype) a->status.field;                       \
-    utype bval = (utype) (itype) b->status.field;                       \
+    utype aval = (utype) (itype) a->field;                              \
+    utype bval = (utype) (itype) b->field;                              \
     utype u = bval - aval;                                              \
     itype r2 = (itype) u;                                               \
     if (r2 < 0) {                                                       \
@@ -638,8 +639,8 @@ compare_vote_rs(const vote_routerstatus_t *a, const vote_routerstatus_t *b)
                             CMP_EXACT))) {
     return r;
   }
-  CMP_FIELD(unsigned, int, ipv4_orport);
-  CMP_FIELD(unsigned, int, ipv4_dirport);
+  CMP_FIELD(unsigned, int, status.ipv4_orport);
+  CMP_FIELD(unsigned, int, status.ipv4_dirport);
 
   return 0;
 }
@@ -692,10 +693,10 @@ compute_routerstatus_consensus(smartlist_t *votes, int consensus_method,
     } else {
       if (cur && (cur_n > most_n ||
                   (cur_n == most_n &&
-                   cur->status.published_on > most_published))) {
+                   cur->published_on > most_published))) {
         most = cur;
         most_n = cur_n;
-        most_published = cur->status.published_on;
+        most_published = cur->published_on;
       }
       cur_n = 1;
       cur = rs;
@@ -703,7 +704,7 @@ compute_routerstatus_consensus(smartlist_t *votes, int consensus_method,
   } SMARTLIST_FOREACH_END(rs);
 
   if (cur_n > most_n ||
-      (cur && cur_n == most_n && cur->status.published_on > most_published)) {
+      (cur && cur_n == most_n && cur->published_on > most_published)) {
     most = cur;
     // most_n = cur_n; // unused after this point.
     // most_published = cur->status.published_on; // unused after this point.
@@ -2047,7 +2048,7 @@ networkstatus_compute_consensus(smartlist_t *votes,
       memcpy(rs_out.descriptor_digest, rs->status.descriptor_digest,
              DIGEST_LEN);
       tor_addr_copy(&rs_out.ipv4_addr, &rs->status.ipv4_addr);
-      rs_out.published_on = rs->status.published_on;
+      time_t published_on = rs->published_on;
       rs_out.ipv4_dirport = rs->status.ipv4_dirport;
       rs_out.ipv4_orport = rs->status.ipv4_orport;
       tor_addr_copy(&rs_out.ipv6_addr, &alt_orport.addr);
@@ -2276,7 +2277,7 @@ networkstatus_compute_consensus(smartlist_t *votes,
         /* Okay!! Now we can write the descriptor... */
         /*     First line goes into "buf". */
         buf = routerstatus_format_entry(&rs_out, NULL, NULL,
-                                        rs_format, NULL);
+                                        rs_format, NULL, published_on);
         if (buf)
           smartlist_add(chunks, buf);
       }
@@ -4745,6 +4746,7 @@ dirserv_generate_networkstatus_vote_obj(crypto_pk_t *private_key,
       dirauth_set_routerstatus_from_routerinfo(rs, node, ri, now,
                                                list_bad_exits,
                                                list_middle_only);
+      vrs->published_on = ri->cache_info.published_on;
 
       if (ri->cache_info.signing_key_cert) {
         memcpy(vrs->ed25519_id,
diff --git a/src/feature/dirparse/ns_parse.c b/src/feature/dirparse/ns_parse.c
index cd3e2731be..3e1f9a3bd3 100644
--- a/src/feature/dirparse/ns_parse.c
+++ b/src/feature/dirparse/ns_parse.c
@@ -371,14 +371,17 @@ routerstatus_parse_entry_from_string(memarea_t *area,
     }
   }
 
+  time_t published_on;
   if (tor_snprintf(timebuf, sizeof(timebuf), "%s %s",
                    tok->args[3+offset], tok->args[4+offset]) < 0 ||
-      parse_iso_time(timebuf, &rs->published_on)<0) {
+      parse_iso_time(timebuf, &published_on)<0) {
     log_warn(LD_DIR, "Error parsing time '%s %s' [%d %d]",
              tok->args[3+offset], tok->args[4+offset],
              offset, (int)flav);
     goto err;
   }
+  if (vote_rs)
+    vote_rs->published_on = published_on;
 
   if (tor_inet_aton(tok->args[5+offset], &in) == 0) {
     log_warn(LD_DIR, "Error parsing router address in network-status %s",
diff --git a/src/feature/nodelist/fmt_routerstatus.c b/src/feature/nodelist/fmt_routerstatus.c
index 95379a7721..07b4e63472 100644
--- a/src/feature/nodelist/fmt_routerstatus.c
+++ b/src/feature/nodelist/fmt_routerstatus.c
@@ -26,6 +26,9 @@
 /** Helper: write the router-status information in <b>rs</b> into a newly
  * allocated character buffer.  Use the same format as in network-status
  * documents.  If <b>version</b> is non-NULL, add a "v" line for the platform.
+ * If <b>declared_publish_time</b> is nonnegative, we declare it as the
+ * publication time.  Otherwise we look for a publication time in <b>vrs</b>,
+ * and fall back to a default (not useful) publication time.
  *
  * Return 0 on success, -1 on failure.
  *
@@ -38,12 +41,14 @@
  *   NS_V3_VOTE - Output a complete V3 NS vote. If <b>vrs</b> is present,
  *        it contains additional information for the vote.
  *   NS_CONTROL_PORT - Output a NS document for the control port.
+ *
  */
 char *
 routerstatus_format_entry(const routerstatus_t *rs, const char *version,
                           const char *protocols,
                           routerstatus_format_type_t format,
-                          const vote_routerstatus_t *vrs)
+                          const vote_routerstatus_t *vrs,
+                          time_t declared_publish_time)
 {
   char *summary;
   char *result = NULL;
@@ -53,11 +58,18 @@ routerstatus_format_entry(const routerstatus_t *rs, const char *version,
   char digest64[BASE64_DIGEST_LEN+1];
   smartlist_t *chunks = smartlist_new();
 
+  if (declared_publish_time != -1) {
+    format_iso_time(published, declared_publish_time);
+  } else if (vrs) {
+    format_iso_time(published, vrs->published_on);
+  } else {
+    strlcpy(published, "2038-01-01 00:00:00", sizeof(published));
+  }
+
   const char *ip_str = fmt_addr(&rs->ipv4_addr);
   if (ip_str[0] == '\0')
     goto err;
 
-  format_iso_time(published, rs->published_on);
   digest_to_base64(identity64, rs->identity_digest);
   digest_to_base64(digest64, rs->descriptor_digest);
 
diff --git a/src/feature/nodelist/fmt_routerstatus.h b/src/feature/nodelist/fmt_routerstatus.h
index 7482f373e1..740ea51dd9 100644
--- a/src/feature/nodelist/fmt_routerstatus.h
+++ b/src/feature/nodelist/fmt_routerstatus.h
@@ -35,6 +35,7 @@ char *routerstatus_format_entry(
                               const char *version,
                               const char *protocols,
                               routerstatus_format_type_t format,
-                              const vote_routerstatus_t *vrs);
+                              const vote_routerstatus_t *vrs,
+                              time_t declared_publish_time);
 
 #endif /* !defined(TOR_FMT_ROUTERSTATUS_H) */
diff --git a/src/feature/nodelist/networkstatus.c b/src/feature/nodelist/networkstatus.c
index c006ee015e..f7b3933b84 100644
--- a/src/feature/nodelist/networkstatus.c
+++ b/src/feature/nodelist/networkstatus.c
@@ -2364,7 +2364,7 @@ char *
 networkstatus_getinfo_helper_single(const routerstatus_t *rs)
 {
   return routerstatus_format_entry(rs, NULL, NULL, NS_CONTROL_PORT,
-                                   NULL);
+                                   NULL, -1);
 }
 
 /**
@@ -2396,7 +2396,6 @@ set_routerstatus_from_routerinfo(routerstatus_t *rs,
   rs->is_hs_dir = node->is_hs_dir;
   rs->is_named = rs->is_unnamed = 0;
 
-  rs->published_on = ri->cache_info.published_on;
   memcpy(rs->identity_digest, node->identity, DIGEST_LEN);
   memcpy(rs->descriptor_digest, ri->cache_info.signed_descriptor_digest,
          DIGEST_LEN);
diff --git a/src/feature/nodelist/routerstatus_st.h b/src/feature/nodelist/routerstatus_st.h
index 55b76de581..a36c80917c 100644
--- a/src/feature/nodelist/routerstatus_st.h
+++ b/src/feature/nodelist/routerstatus_st.h
@@ -21,7 +21,6 @@ struct routerstatus_t {
  * routerstatus_has_visibly_changed and the printing function
  * routerstatus_format_entry in NS_CONTROL_PORT mode.
  */
-  time_t published_on; /**< When was this router published? */
   char nickname[MAX_NICKNAME_LEN+1]; /**< The nickname this router says it
                                       * has. */
   char identity_digest[DIGEST_LEN]; /**< Digest of the router's identity
diff --git a/src/feature/nodelist/vote_routerstatus_st.h b/src/feature/nodelist/vote_routerstatus_st.h
index 6b2f7b92a9..41d465db8f 100644
--- a/src/feature/nodelist/vote_routerstatus_st.h
+++ b/src/feature/nodelist/vote_routerstatus_st.h
@@ -18,6 +18,7 @@
 struct vote_routerstatus_t {
   routerstatus_t status; /**< Underlying 'status' object for this router.
                           * Flags are redundant. */
+  time_t published_on; /**< When was this router published? */
   /** How many known-flags are allowed in a vote? This is the width of
    * the flags field of vote_routerstatus_t */
 #define MAX_KNOWN_FLAGS_IN_VOTE 64
diff --git a/src/test/test_dir.c b/src/test/test_dir.c
index 186e09f236..248fd8ab5d 100644
--- a/src/test/test_dir.c
+++ b/src/test/test_dir.c
@@ -2971,7 +2971,7 @@ test_vrs_for_v3ns(vote_routerstatus_t *vrs, int voter, time_t now)
                 (voter == 1)) {
     /* Check the first routerstatus. */
     tt_str_op(vrs->version,OP_EQ, "0.1.2.14");
-    tt_int_op(rs->published_on,OP_EQ, now-1500);
+    tt_int_op(vrs->published_on,OP_EQ, now-1500);
     tt_str_op(rs->nickname,OP_EQ, "router2");
     tt_mem_op(rs->identity_digest,OP_EQ,
                "\x3\x3\x3\x3\x3\x3\x3\x3\x3\x3\x3\x3\x3\x3\x3\x3"
@@ -2996,7 +2996,7 @@ test_vrs_for_v3ns(vote_routerstatus_t *vrs, int voter, time_t now)
     if (voter == 1) {
       /* Check the second routerstatus. */
       tt_str_op(vrs->version,OP_EQ, "0.2.0.5");
-      tt_int_op(rs->published_on,OP_EQ, now-1000);
+      tt_int_op(vrs->published_on,OP_EQ, now-1000);
       tt_str_op(rs->nickname,OP_EQ, "router1");
     }
     tt_mem_op(rs->descriptor_digest,OP_EQ, "MMMMMMMMMMMMMMMMMMMM", DIGEST_LEN);
@@ -3057,6 +3057,7 @@ test_consensus_for_v3ns(networkstatus_t *con, time_t now)
 static void
 test_routerstatus_for_v3ns(routerstatus_t *rs, time_t now)
 {
+  (void)now;
   tor_addr_t addr_ipv6;
 
   tt_assert(rs);
@@ -3093,7 +3094,6 @@ test_routerstatus_for_v3ns(routerstatus_t *rs, time_t now)
                DIGEST_LEN);
     tt_str_op(rs->nickname,OP_EQ, "router1");
     tt_mem_op(rs->descriptor_digest,OP_EQ, "MMMMMMMMMMMMMMMMMMMM", DIGEST_LEN);
-    tt_int_op(rs->published_on,OP_EQ, now-1000);
     tt_assert(tor_addr_eq_ipv4h(&rs->ipv4_addr, 0x99009901));
     tt_int_op(rs->ipv4_orport,OP_EQ, 443);
     tt_int_op(rs->ipv4_dirport,OP_EQ, 0);
@@ -3968,7 +3968,7 @@ gen_routerstatus_for_umbw(int idx, time_t now)
       vrs = tor_malloc_zero(sizeof(vote_routerstatus_t));
       rs = &vrs->status;
       vrs->version = tor_strdup("0.1.2.14");
-      rs->published_on = now-1500;
+      vrs->published_on = now-1500;
       strlcpy(rs->nickname, "router2", sizeof(rs->nickname));
       memset(rs->identity_digest, 3, DIGEST_LEN);
       memset(rs->descriptor_digest, 78, DIGEST_LEN);
@@ -3993,7 +3993,7 @@ gen_routerstatus_for_umbw(int idx, time_t now)
       vrs = tor_malloc_zero(sizeof(vote_routerstatus_t));
       rs = &vrs->status;
       vrs->version = tor_strdup("0.2.0.5");
-      rs->published_on = now-1000;
+      vrs->published_on = now-1000;
       strlcpy(rs->nickname, "router1", sizeof(rs->nickname));
       memset(rs->identity_digest, 5, DIGEST_LEN);
       memset(rs->descriptor_digest, 77, DIGEST_LEN);
@@ -4020,7 +4020,7 @@ gen_routerstatus_for_umbw(int idx, time_t now)
       vrs = tor_malloc_zero(sizeof(vote_routerstatus_t));
       rs = &vrs->status;
       vrs->version = tor_strdup("0.1.0.3");
-      rs->published_on = now-1000;
+      vrs->published_on = now-1000;
       strlcpy(rs->nickname, "router3", sizeof(rs->nickname));
       memset(rs->identity_digest, 0x33, DIGEST_LEN);
       memset(rs->descriptor_digest, 79, DIGEST_LEN);
@@ -4046,7 +4046,7 @@ gen_routerstatus_for_umbw(int idx, time_t now)
       vrs = tor_malloc_zero(sizeof(vote_routerstatus_t));
       rs = &vrs->status;
       vrs->version = tor_strdup("0.1.6.3");
-      rs->published_on = now-1000;
+      vrs->published_on = now-1000;
       strlcpy(rs->nickname, "router4", sizeof(rs->nickname));
       memset(rs->identity_digest, 0x34, DIGEST_LEN);
       memset(rs->descriptor_digest, 47, DIGEST_LEN);
@@ -4146,7 +4146,7 @@ test_vrs_for_umbw(vote_routerstatus_t *vrs, int voter, time_t now)
      * cutoff.
      */
     tt_str_op(vrs->version,OP_EQ, "0.1.2.14");
-    tt_int_op(rs->published_on,OP_EQ, now-1500);
+    tt_int_op(vrs->published_on,OP_EQ, now-1500);
     tt_str_op(rs->nickname,OP_EQ, "router2");
     tt_mem_op(rs->identity_digest,OP_EQ,
                "\x3\x3\x3\x3\x3\x3\x3\x3\x3\x3"
@@ -4170,7 +4170,7 @@ test_vrs_for_umbw(vote_routerstatus_t *vrs, int voter, time_t now)
      * cutoff.
      */
     tt_str_op(vrs->version,OP_EQ, "0.2.0.5");
-    tt_int_op(rs->published_on,OP_EQ, now-1000);
+    tt_int_op(vrs->published_on,OP_EQ, now-1000);
     tt_str_op(rs->nickname,OP_EQ, "router1");
     tt_mem_op(rs->identity_digest,OP_EQ,
                "\x5\x5\x5\x5\x5\x5\x5\x5\x5\x5"
@@ -4245,6 +4245,7 @@ test_consensus_for_umbw(networkstatus_t *con, time_t now)
 static void
 test_routerstatus_for_umbw(routerstatus_t *rs, time_t now)
 {
+  (void)now;
   tor_addr_t addr_ipv6;
   uint32_t max_unmeasured_bw_kb = (alternate_clip_bw > 0) ?
     alternate_clip_bw : DEFAULT_MAX_UNMEASURED_BW_KB;
@@ -4285,7 +4286,6 @@ test_routerstatus_for_umbw(routerstatus_t *rs, time_t now)
                DIGEST_LEN);
     tt_str_op(rs->nickname,OP_EQ, "router1");
     tt_mem_op(rs->descriptor_digest,OP_EQ, "MMMMMMMMMMMMMMMMMMMM", DIGEST_LEN);
-    tt_int_op(rs->published_on,OP_EQ, now-1000);
     tt_assert(tor_addr_eq_ipv4h(&rs->ipv4_addr, 0x99009901));
     tt_int_op(rs->ipv4_orport,OP_EQ, 443);
     tt_int_op(rs->ipv4_dirport,OP_EQ, 0);
@@ -4385,7 +4385,6 @@ test_dir_fmt_control_ns(void *arg)
   (void)arg;
 
   memset(&rs, 0, sizeof(rs));
-  rs.published_on = 1364925198;
   strlcpy(rs.nickname, "TetsuoMilk", sizeof(rs.nickname));
   memcpy(rs.identity_digest, "Stately, plump Buck ", DIGEST_LEN);
   memcpy(rs.descriptor_digest, "Mulligan came up fro", DIGEST_LEN);
@@ -4403,7 +4402,7 @@ test_dir_fmt_control_ns(void *arg)
   tt_assert(s);
   tt_str_op(s, OP_EQ,
             "r TetsuoMilk U3RhdGVseSwgcGx1bXAgQnVjayA "
-               "TXVsbGlnYW4gY2FtZSB1cCBmcm8 2013-04-02 17:53:18 "
+               "TXVsbGlnYW4gY2FtZSB1cCBmcm8 2038-01-01 00:00:00 "
                "32.48.64.80 9001 9002\n"
             "s Exit Fast Running V2Dir\n"
             "w Bandwidth=1000\n");
diff --git a/src/test/test_dir_common.c b/src/test/test_dir_common.c
index 201ea900ff..50ba32b562 100644
--- a/src/test/test_dir_common.c
+++ b/src/test/test_dir_common.c
@@ -93,7 +93,7 @@ dir_common_gen_routerstatus_for_v3ns(int idx, time_t now)
       vrs = tor_malloc_zero(sizeof(vote_routerstatus_t));
       rs = &vrs->status;
       vrs->version = tor_strdup("0.1.2.14");
-      rs->published_on = now-1500;
+      vrs->published_on = now-1500;
       strlcpy(rs->nickname, "router2", sizeof(rs->nickname));
       memset(rs->identity_digest, TEST_DIR_ROUTER_ID_1, DIGEST_LEN);
       memset(rs->descriptor_digest, TEST_DIR_ROUTER_DD_1, DIGEST_LEN);
@@ -111,7 +111,7 @@ dir_common_gen_routerstatus_for_v3ns(int idx, time_t now)
       vrs = tor_malloc_zero(sizeof(vote_routerstatus_t));
       rs = &vrs->status;
       vrs->version = tor_strdup("0.2.0.5");
-      rs->published_on = now-1000;
+      vrs->published_on = now-1000;
       strlcpy(rs->nickname, "router1", sizeof(rs->nickname));
       memset(rs->identity_digest, TEST_DIR_ROUTER_ID_2, DIGEST_LEN);
       memset(rs->descriptor_digest, TEST_DIR_ROUTER_DD_2, DIGEST_LEN);
@@ -130,7 +130,7 @@ dir_common_gen_routerstatus_for_v3ns(int idx, time_t now)
       vrs = tor_malloc_zero(sizeof(vote_routerstatus_t));
       rs = &vrs->status;
       vrs->version = tor_strdup("0.1.0.3");
-      rs->published_on = now-1000;
+      vrs->published_on = now-1000;
       strlcpy(rs->nickname, "router3", sizeof(rs->nickname));
       memset(rs->identity_digest, TEST_DIR_ROUTER_ID_3, DIGEST_LEN);
       memset(rs->descriptor_digest, TEST_DIR_ROUTER_DD_3, DIGEST_LEN);
@@ -147,7 +147,7 @@ dir_common_gen_routerstatus_for_v3ns(int idx, time_t now)
       vrs = tor_malloc_zero(sizeof(vote_routerstatus_t));
       rs = &vrs->status;
       vrs->version = tor_strdup("0.1.6.3");
-      rs->published_on = now-1000;
+      vrs->published_on = now-1000;
       strlcpy(rs->nickname, "router4", sizeof(rs->nickname));
       memset(rs->identity_digest, TEST_DIR_ROUTER_ID_4, DIGEST_LEN);
       memset(rs->descriptor_digest, TEST_DIR_ROUTER_DD_4, DIGEST_LEN);
diff --git a/src/test/test_nodelist.c b/src/test/test_nodelist.c
index 250db9a964..ecd29f5464 100644
--- a/src/test/test_nodelist.c
+++ b/src/test/test_nodelist.c
@@ -1273,7 +1273,6 @@ test_nodelist_routerstatus_has_visibly_changed(void *arg)
   memcpy(rs_orig.descriptor_digest, "abcdefghijklmnopqrst", 20);
   tor_addr_from_ipv4h(&rs_orig.ipv4_addr, 0x7f000001);
   rs_orig.ipv4_orport = 3;
-  rs_orig.published_on = time(NULL);
   rs_orig.has_bandwidth = 1;
   rs_orig.bandwidth_kb = 20;
 
@@ -1284,9 +1283,9 @@ test_nodelist_routerstatus_has_visibly_changed(void *arg)
     tor_free(fmt);                                                        \
     fmt_orig = routerstatus_format_entry(&rs_orig, NULL, NULL,            \
                           NS_CONTROL_PORT,                                \
-                          NULL);                                          \
+                          NULL, -1);                                      \
     fmt = routerstatus_format_entry(&rs, NULL, NULL, NS_CONTROL_PORT,     \
-                          NULL);                                          \
+                          NULL, -1);                                      \
     tt_assert(fmt_orig);                                                  \
     tt_assert(fmt);                                                       \
   STMT_END
@@ -1322,9 +1321,6 @@ test_nodelist_routerstatus_has_visibly_changed(void *arg)
   strlcpy(rs.nickname, "fr1end1y", sizeof(rs.nickname));
   ASSERT_CHANGED();
 
-  rs.published_on += 3600;
-  ASSERT_CHANGED();
-
   rs.ipv4_orport = 55;
   ASSERT_CHANGED();
 
diff --git a/src/test/test_router.c b/src/test/test_router.c
index 15cc93fbfc..47084bba01 100644
--- a/src/test/test_router.c
+++ b/src/test/test_router.c
@@ -282,7 +282,6 @@ test_router_mark_if_too_old(void *arg)
   mock_ns = &ns;
   mock_ns->valid_after = now-3600;
   mock_rs = &rs;
-  mock_rs->published_on = now - 10;
 
   // no reason to mark this time.
   desc_clean_since = now-10;
@@ -302,25 +301,14 @@ test_router_mark_if_too_old(void *arg)
   tt_i64_op(desc_clean_since, OP_EQ, 0);
   tt_str_op(desc_dirty_reason, OP_EQ, "time for new descriptor");
 
-  // Version in consensus published a long time ago?  We won't mark it
-  // if it's been clean for only a short time.
   desc_clean_since = now - 10;
   desc_dirty_reason = NULL;
-  mock_rs->published_on = now - 3600 * 96;
   mark_my_descriptor_dirty_if_too_old(now);
   tt_i64_op(desc_clean_since, OP_EQ, now - 10);
 
-  // ... but if it's been clean a while, we mark.
-  desc_clean_since = now - 2 * 3600;
-  mark_my_descriptor_dirty_if_too_old(now);
-  tt_i64_op(desc_clean_since, OP_EQ, 0);
-  tt_str_op(desc_dirty_reason, OP_EQ,
-            "version listed in consensus is quite old");
-
-  // same deal if we're marked stale.
+  // Version in consensus marked as stale?  We'll mark it.
   desc_clean_since = now - 2 * 3600;
   desc_dirty_reason = NULL;
-  mock_rs->published_on = now - 10;
   mock_rs->is_staledesc = 1;
   mark_my_descriptor_dirty_if_too_old(now);
   tt_i64_op(desc_clean_since, OP_EQ, 0);
diff --git a/src/test/test_voting_flags.c b/src/test/test_voting_flags.c
index 457b0fa796..a5b1248cc1 100644
--- a/src/test/test_voting_flags.c
+++ b/src/test/test_voting_flags.c
@@ -40,7 +40,6 @@ setup_cfg(flag_vote_test_cfg_t *c)
   memset(c->ri.cache_info.signed_descriptor_digest, 0xee, DIGEST_LEN);
 
   c->ri.cache_info.published_on = c->now - 100;
-  c->expected.published_on = c->now - 100;
 
   tor_addr_from_ipv4h(&c->ri.ipv4_addr, 0x7f010105);
   tor_addr_from_ipv4h(&c->expected.ipv4_addr, 0x7f010105);
@@ -65,7 +64,6 @@ check_result(flag_vote_test_cfg_t *c)
   dirauth_set_routerstatus_from_routerinfo(&rs, &c->node, &c->ri, c->now,
                                            0, 0);
 
-  tt_i64_op(rs.published_on, OP_EQ, c->expected.published_on);
   tt_str_op(rs.nickname, OP_EQ, c->expected.nickname);
 
   // identity_digest and descriptor_digest are not set here.
@@ -144,13 +142,11 @@ test_voting_flags_staledesc(void *arg)
   time_t now = cfg->now;
 
   cfg->ri.cache_info.published_on = now - DESC_IS_STALE_INTERVAL + 10;
-  cfg->expected.published_on = now - DESC_IS_STALE_INTERVAL + 10;
   // no change in expectations for is_staledesc
   if (!check_result(cfg))
     goto done;
 
   cfg->ri.cache_info.published_on = now - DESC_IS_STALE_INTERVAL - 10;
-  cfg->expected.published_on = now - DESC_IS_STALE_INTERVAL - 10;
   cfg->expected.is_staledesc = 1;
   if (!check_result(cfg))
     goto done;

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the tor-commits mailing list