summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-05-02 16:03:57 -0400
committerNick Mathewson <nickm@torproject.org>2018-05-02 16:03:57 -0400
commiteb00eff09defc607f4dc4b6fec7b3c80dc8b439f (patch)
tree36b5bd0001e4b759dcc19ccc1f4b9fa048879e4a
parent1ef1ed76d864b6c3147c0444d9114ebcc53c18b5 (diff)
parente386d61c9be44e82694d523d48591056984bb319 (diff)
downloadtor-eb00eff09defc607f4dc4b6fec7b3c80dc8b439f.tar.gz
tor-eb00eff09defc607f4dc4b6fec7b3c80dc8b439f.zip
Merge branch 'ticket25997'
-rw-r--r--changes/ticket259975
-rw-r--r--src/test/test_hs_common.c13
2 files changed, 10 insertions, 8 deletions
diff --git a/changes/ticket25997 b/changes/ticket25997
new file mode 100644
index 0000000000..2c802c856b
--- /dev/null
+++ b/changes/ticket25997
@@ -0,0 +1,5 @@
+ o Minor bugfixes (testing, coverage):
+ - Remove randomness from the hs_common/responsible_hsdirs test,
+ so that it always takes the same path through the function it tests.
+ Fixes bug 25997; bugfix on 0.3.2.1-alpha.
+
diff --git a/src/test/test_hs_common.c b/src/test/test_hs_common.c
index dcca5713eb..94d3d52e98 100644
--- a/src/test/test_hs_common.c
+++ b/src/test/test_hs_common.c
@@ -360,11 +360,8 @@ mock_networkstatus_get_live_consensus(time_t now)
static void
test_responsible_hsdirs(void *arg)
{
- time_t now = approx_time();
smartlist_t *responsible_dirs = smartlist_new();
networkstatus_t *ns = NULL;
- int retval;
-
(void) arg;
hs_init();
@@ -386,12 +383,12 @@ test_responsible_hsdirs(void *arg)
helper_add_hsdir_to_networkstatus(ns, 3, "spyro", 0);
}
- ed25519_keypair_t kp;
- retval = ed25519_keypair_generate(&kp, 0);
- tt_int_op(retval, OP_EQ , 0);
+ /* Use a fixed time period and pub key so we always take the same path */
+ ed25519_public_key_t pubkey;
+ uint64_t time_period_num = 17653; // 2 May, 2018, 14:00.
+ memset(&pubkey, 42, sizeof(pubkey));
- uint64_t time_period_num = hs_get_time_period_num(now);
- hs_get_responsible_hsdirs(&kp.pubkey, time_period_num,
+ hs_get_responsible_hsdirs(&pubkey, time_period_num,
0, 0, responsible_dirs);
/* Make sure that we only found 2 responsible HSDirs.