[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [chutney/master] Add an option for test-network.sh to run multiple verify rounds
commit f020fb9f0d92866b7b4d6a2a10e6af966f23164d
Author: teor <teor2345@xxxxxxxxx>
Date: Thu May 11 11:26:34 2017 +1000
Add an option for test-network.sh to run multiple verify rounds
This option can be used via --rounds or CHUTNEY_ROUNDS.
The default is 1.
Also clarify that connections are opened simultaneously.
Implements #22225.
---
README | 7 ++++++-
tools/test-network.sh | 25 +++++++++++++++++++++----
2 files changed, 27 insertions(+), 5 deletions(-)
diff --git a/README b/README
index 7779e84..14d521a 100644
--- a/README
+++ b/README
@@ -43,7 +43,9 @@ Timing Options:
Traffic Options:
--data CHUTNEY_DATA_BYTES=N
+ # connections are simultaneous, rounds are sequential
--connections CHUTNEY_CONNECTIONS=N
+ --rounds CHUTNEY_ROUNDS=N
--hs-multi-client CHUTNEY_HS_MULTI_CLIENT=N
Address Options:
@@ -91,10 +93,13 @@ Connection Tests:
./chutney configure networks/basic-025
./chutney start networks/basic-025
./chutney status networks/basic-025
+ # Make 5 simultaneous connections from each client through a random exit
CHUTNEY_CONNECTIONS=5 ./chutney verify networks/basic-025
- # Make 5 connections from each client through a random exit
./chutney stop networks/basic-025
+ # Run 5 sequential verification rounds
+ CHUTNEY_ROUNDS=5 ./tools/test-network.sh --flavour basic
+
Note: If you create 7 or more connections to a hidden service from a single
Tor 0.2.7 client, you'll likely get a verification failure due to #15937.
This is fixed in 0.2.8.
diff --git a/tools/test-network.sh b/tools/test-network.sh
index 59681c4..bb09591 100755
--- a/tools/test-network.sh
+++ b/tools/test-network.sh
@@ -5,6 +5,9 @@ export ECHO="${ECHO:-echo}"
# Output is prefixed with the name of the script
myname=$(basename "$0")
+# default to one round
+export CHUTNEY_ROUNDS=${CHUTNEY_ROUNDS:-1}
+
# default to summarising unexpected warnings
export CHUTNEY_WARNINGS_IGNORE_EXPECTED=${CHUTNEY_WARNINGS_IGNORE_EXPECTED:-true}
export CHUTNEY_WARNINGS_SUMMARY=${CHUTNEY_WARNINGS_SUMMARY:-true}
@@ -78,7 +81,7 @@ do
export CHUTNEY_DATA_BYTES="$2"
shift
;;
- # Make this many connections per client (1)
+ # Make this many simultaneous connections per client (1)
# Note: If you create 7 or more connections to a hidden service from
# a single Tor 0.2.7 client, you'll likely get a verification failure due
# to #15937. This is fixed in 0.2.8.
@@ -86,6 +89,11 @@ do
export CHUTNEY_CONNECTIONS="$2"
shift
;;
+ # Run this many verification rounds (1)
+ --rounds)
+ export CHUTNEY_ROUNDS="$2"
+ shift
+ ;;
# Make each client connect to each HS (0)
# 0 means a single client connects to each HS
# 1 means every client connects to every HS
@@ -286,9 +294,18 @@ else
fi
if [ "$CHUTNEY_BOOTSTRAP_TIME" -ge 0 ]; then
- # Chutney will try to verify for $CHUTNEY_BOOTSTRAP_TIME seconds
- "$CHUTNEY" verify "$CHUTNEY_NETWORK"
- VERIFY_EXIT_STATUS="$?"
+ # Chutney will try to verify for $CHUTNEY_BOOTSTRAP_TIME seconds each round
+ n_rounds=0
+ VERIFY_EXIT_STATUS=0
+ # Run CHUTNEY_ROUNDS verification rounds
+ $ECHO "Running $CHUTNEY_ROUNDS verify rounds..."
+ while [ "$CHUTNEY_ROUNDS" -gt "$n_rounds" \
+ -a "$VERIFY_EXIT_STATUS" -eq 0 ]; do
+ "$CHUTNEY" verify "$CHUTNEY_NETWORK"
+ VERIFY_EXIT_STATUS="$?"
+ $[n_rounds++]
+ done
+ $ECHO "Completed $n_rounds of $CHUTNEY_ROUNDS verify rounds."
else
$ECHO "Chutney network ready and running. To stop the network, use:"
$ECHO "$CHUTNEY stop $CHUTNEY_NETWORK"
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits