diff --git a/changes/ticket29702 b/changes/ticket29702 new file mode 100644 index 0000000000..e1cc1f867b --- /dev/null +++ b/changes/ticket29702 @@ -0,0 +1,4 @@ + o Testing: + - Specify torrc paths (with empty files) when launching tor in + integration tests; refrain from reading user and system torrcs. + Resolves issue 29702. diff --git a/src/test/test_key_expiration.sh b/src/test/test_key_expiration.sh index cf6608634d..3474210607 100755 --- a/src/test/test_key_expiration.sh +++ b/src/test/test_key_expiration.sh @@ -66,10 +66,11 @@ trap "rm -rf '$DATA_DIR'" 0 DATA_DIR=`cd "${DATA_DIR}" && pwd` touch "${DATA_DIR}/empty_torrc" +touch "${DATA_DIR}/empty_defaults_torrc" QUIETLY="--hush" SILENTLY="--quiet" -TOR="${TOR_BINARY} --DisableNetwork 1 --ShutdownWaitLength 0 --ORPort 12345 --ExitRelay 0 -f ${DATA_DIR}/empty_torrc --DataDirectory ${DATA_DIR}" +TOR="${TOR_BINARY} --DisableNetwork 1 --ShutdownWaitLength 0 --ORPort 12345 --ExitRelay 0 --DataDirectory ${DATA_DIR} -f ${DATA_DIR}/empty_torrc --defaults-torrc ${DATA_DIR}/empty_defaults_torrc" ##### SETUP # diff --git a/src/test/test_keygen.sh b/src/test/test_keygen.sh index 455f9e7d42..7afff271cb 100755 --- a/src/test/test_keygen.sh +++ b/src/test/test_keygen.sh @@ -83,10 +83,11 @@ trap "rm -rf '$DATA_DIR'" 0 DATA_DIR=`cd "${DATA_DIR}" && pwd` touch "${DATA_DIR}/empty_torrc" +touch "${DATA_DIR}/empty_defaults_torrc" QUIETLY="--hush" SILENTLY="--quiet" -TOR="${TOR_BINARY} ${QUIETLY} --DisableNetwork 1 --ShutdownWaitLength 0 --ORPort 12345 --ExitRelay 0 -f ${DATA_DIR}/empty_torrc" +TOR="${TOR_BINARY} ${QUIETLY} --DisableNetwork 1 --ShutdownWaitLength 0 --ORPort 12345 --ExitRelay 0 -f ${DATA_DIR}/empty_torrc --defaults-torrc ${DATA_DIR}/empty_defaults_torrc" ##### SETUP # diff --git a/src/test/test_rebind.py b/src/test/test_rebind.py index 00e5a08be7..a376e62cb4 100644 --- a/src/test/test_rebind.py +++ b/src/test/test_rebind.py @@ -82,13 +82,21 @@ if not os.path.exists(sys.argv[2]): tor_path = sys.argv[1] data_dir = sys.argv[2] +empty_torrc_path = os.path.join(data_dir, 'empty_torrc') +open(empty_torrc_path, 'w').close() +empty_defaults_torrc_path = os.path.join(data_dir, 'empty_defaults_torrc') +open(empty_defaults_torrc_path, 'w').close() + tor_process = subprocess.Popen([tor_path, '-DataDirectory', data_dir, '-ControlPort', '127.0.0.1:{}'.format(control_port), '-SOCKSPort', '127.0.0.1:{}'.format(socks_port), '-Log', 'debug stdout', '-LogTimeGranularity', '1', - '-FetchServerDescriptors', '0'], + '-FetchServerDescriptors', '0', + '-f', empty_torrc_path, + '--defaults-torrc', empty_defaults_torrc_path, + ], stdout=subprocess.PIPE, stderr=subprocess.PIPE) diff --git a/src/test/zero_length_keys.sh b/src/test/zero_length_keys.sh index 3c61f8d465..5635bdfd89 100755 --- a/src/test/zero_length_keys.sh +++ b/src/test/zero_length_keys.sh @@ -43,10 +43,11 @@ fi trap "rm -rf '$DATA_DIR'" 0 touch "$DATA_DIR"/empty_torrc +touch "$DATA_DIR"/empty_defaults_torrc # DisableNetwork means that the ORPort won't actually be opened. # 'ExitRelay 0' suppresses a warning. -TOR="${TOR_BINARY} --hush --DisableNetwork 1 --ShutdownWaitLength 0 --ORPort 12345 --ExitRelay 0 -f $DATA_DIR/empty_torrc" +TOR="${TOR_BINARY} --hush --DisableNetwork 1 --ShutdownWaitLength 0 --ORPort 12345 --ExitRelay 0 -f $DATA_DIR/empty_torrc --defaults-torrc $DATA_DIR/empty_defaults_torrc" if [ -s "$DATA_DIR"/keys/secret_id_key ] && [ -s "$DATA_DIR"/keys/secret_onion_key ] && [ -s "$DATA_DIR"/keys/secret_onion_key_ntor ]; then