[tor-commits] [tor/master] Resurrect dead code in test_channelpadding.c

nickm at torproject.org nickm at torproject.org
Thu May 11 11:26:05 UTC 2017


commit 2bf4263800f4ee14e2e4cd4015b2b6c46c25c845
Author: Taylor Yu <catalyst at torproject.org>
Date:   Wed May 10 13:57:18 2017 -0400

    Resurrect dead code in test_channelpadding.c
    
    A for-loop in test_channelpadding_timers() would never run because it
    was trying to increment a counter up to CHANNELS_TO_TEST/3 after an
    earlier block already incremented it to CHANNELS_TO_TEST/2.
    
    Fixes #22221, CID 1405983.
---
 src/test/test_channelpadding.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/src/test/test_channelpadding.c b/src/test/test_channelpadding.c
index ae6abe4..0a70184 100644
--- a/src/test/test_channelpadding.c
+++ b/src/test/test_channelpadding.c
@@ -287,22 +287,22 @@ test_channelpadding_timers(void *arg)
       tt_int_op(tried_to_write_cell, OP_EQ, 0);
     }
 
-    /* This loop should add timers to our existing lists in a weak
-     * pseudorandom pattern.  It ensures that the lists can grow with multiple
-     * timers in them. */
-    for (; i < CHANNELS_TO_TEST/2; i++) {
-      chans[i]->next_padding_time_ms = monotime_coarse_absolute_msec() + 10 +
-          i*3 % CHANNELPADDING_MAX_TIMERS;
+    /* This loop should add timers to the first position in the timerslot
+     * array, since its timeout is before all other timers. */
+    for (; i < CHANNELS_TO_TEST/3; i++) {
+      chans[i]->next_padding_time_ms = monotime_coarse_absolute_msec() + 1;
       decision = channelpadding_decide_to_pad_channel(chans[i]);
       tt_int_op(decision, OP_EQ, CHANNELPADDING_PADDING_SCHEDULED);
       tt_assert(chans[i]->pending_padding_callback);
       tt_int_op(tried_to_write_cell, OP_EQ, 0);
     }
 
-    /* This loop should add timers to the first position in the timerslot
-     * array, since its timeout is before all other timers. */
-    for (; i < CHANNELS_TO_TEST/3; i++) {
-      chans[i]->next_padding_time_ms = monotime_coarse_absolute_msec() + 1;
+    /* This loop should add timers to our existing lists in a weak
+     * pseudorandom pattern.  It ensures that the lists can grow with multiple
+     * timers in them. */
+    for (; i < CHANNELS_TO_TEST/2; i++) {
+      chans[i]->next_padding_time_ms = monotime_coarse_absolute_msec() + 10 +
+          i*3 % CHANNELPADDING_MAX_TIMERS;
       decision = channelpadding_decide_to_pad_channel(chans[i]);
       tt_int_op(decision, OP_EQ, CHANNELPADDING_PADDING_SCHEDULED);
       tt_assert(chans[i]->pending_padding_callback);





More information about the tor-commits mailing list