mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-13 14:43:46 +01:00
0cc18ef64c
Create the hs_test_helpers.{c|h} files that contains helper functions to create introduction point, descriptor and compare descriptor. Used by both the hs cache and hs descriptor tests. Unify them to avoid code duplication. Also, this commit fixes the usage of the signing key that was wrongly used when creating a cross signed certificate. Signed-off-by: David Goulet <dgoulet@torproject.org>
319 lines
10 KiB
Plaintext
319 lines
10 KiB
Plaintext
# When the day comes that Tor requires Automake >= 1.12 change
|
|
# TESTS_ENVIRONMENT to AM_TESTS_ENVIRONMENT because the former is reserved for
|
|
# users while the later is reserved for developers.
|
|
TESTS_ENVIRONMENT = \
|
|
export PYTHON="$(PYTHON)"; \
|
|
export SHELL="$(SHELL)"; \
|
|
export abs_top_srcdir="$(abs_top_srcdir)"; \
|
|
export builddir="$(builddir)"; \
|
|
export TESTING_TOR_BINARY="$(TESTING_TOR_BINARY)";
|
|
|
|
TESTSCRIPTS = \
|
|
src/test/fuzz_static_testcases.sh \
|
|
src/test/test_zero_length_keys.sh \
|
|
src/test/test_workqueue_cancel.sh \
|
|
src/test/test_workqueue_efd.sh \
|
|
src/test/test_workqueue_efd2.sh \
|
|
src/test/test_workqueue_pipe.sh \
|
|
src/test/test_workqueue_pipe2.sh \
|
|
src/test/test_workqueue_socketpair.sh \
|
|
src/test/test_switch_id.sh
|
|
|
|
if USEPYTHON
|
|
TESTSCRIPTS += src/test/test_ntor.sh src/test/test_hs_ntor.sh src/test/test_bt.sh
|
|
endif
|
|
|
|
TESTS += src/test/test src/test/test-slow src/test/test-memwipe \
|
|
src/test/test_workqueue \
|
|
src/test/test_keygen.sh \
|
|
src/test/test-timers \
|
|
$(TESTSCRIPTS)
|
|
|
|
# These flavors are run using automake's test-driver and test-network.sh
|
|
TEST_CHUTNEY_FLAVORS = basic-min bridges-min hs-min single-onion
|
|
# only run if we can ping6 ::1 (localhost)
|
|
TEST_CHUTNEY_FLAVORS_IPV6 = bridges+ipv6-min ipv6-exit-min hs-ipv6 \
|
|
single-onion-ipv6
|
|
# only run if we can find a stable (or simply another) version of tor
|
|
TEST_CHUTNEY_FLAVORS_MIXED = mixed
|
|
|
|
### This is a lovely feature, but it requires automake >= 1.12, and Tor
|
|
### doesn't require that yet.
|
|
###
|
|
# TEST_EXTENSIONS = .sh
|
|
# SH_LOG_COMPILER = $(SHELL)
|
|
|
|
noinst_PROGRAMS+= src/test/bench
|
|
if UNITTESTS_ENABLED
|
|
noinst_PROGRAMS+= \
|
|
src/test/test \
|
|
src/test/test-slow \
|
|
src/test/test-memwipe \
|
|
src/test/test-child \
|
|
src/test/test_workqueue \
|
|
src/test/test-switch-id \
|
|
src/test/test-timers
|
|
endif
|
|
|
|
src_test_AM_CPPFLAGS = -DSHARE_DATADIR="\"$(datadir)\"" \
|
|
-DLOCALSTATEDIR="\"$(localstatedir)\"" \
|
|
-DBINDIR="\"$(bindir)\"" \
|
|
-I"$(top_srcdir)/src/or" -I"$(top_srcdir)/src/ext" \
|
|
-I"$(top_srcdir)/src/trunnel" \
|
|
-I"$(top_srcdir)/src/ext/trunnel" \
|
|
-DTOR_UNIT_TESTS
|
|
|
|
# -L flags need to go in LDFLAGS. -l flags need to go in LDADD.
|
|
# This seems to matter nowhere but on Windows, but I assure you that it
|
|
# matters a lot there, and is quite hard to debug if you forget to do it.
|
|
|
|
src_test_test_SOURCES = \
|
|
src/test/log_test_helpers.c \
|
|
src/test/hs_test_helpers.c \
|
|
src/test/rend_test_helpers.c \
|
|
src/test/test.c \
|
|
src/test/test_accounting.c \
|
|
src/test/test_addr.c \
|
|
src/test/test_address.c \
|
|
src/test/test_buffers.c \
|
|
src/test/test_cell_formats.c \
|
|
src/test/test_cell_queue.c \
|
|
src/test/test_channel.c \
|
|
src/test/test_channelpadding.c \
|
|
src/test/test_channeltls.c \
|
|
src/test/test_checkdir.c \
|
|
src/test/test_circuitlist.c \
|
|
src/test/test_circuitmux.c \
|
|
src/test/test_circuitbuild.c \
|
|
src/test/test_circuituse.c \
|
|
src/test/test_compat_libevent.c \
|
|
src/test/test_config.c \
|
|
src/test/test_connection.c \
|
|
src/test/test_conscache.c \
|
|
src/test/test_consdiff.c \
|
|
src/test/test_consdiffmgr.c \
|
|
src/test/test_containers.c \
|
|
src/test/test_controller.c \
|
|
src/test/test_controller_events.c \
|
|
src/test/test_crypto.c \
|
|
src/test/test_crypto_openssl.c \
|
|
src/test/test_data.c \
|
|
src/test/test_dir.c \
|
|
src/test/test_dir_common.c \
|
|
src/test/test_dir_handle_get.c \
|
|
src/test/test_entryconn.c \
|
|
src/test/test_entrynodes.c \
|
|
src/test/test_guardfraction.c \
|
|
src/test/test_extorport.c \
|
|
src/test/test_hs.c \
|
|
src/test/test_hs_service.c \
|
|
src/test/test_hs_intropoint.c \
|
|
src/test/test_handles.c \
|
|
src/test/test_hs_cache.c \
|
|
src/test/test_hs_descriptor.c \
|
|
src/test/test_introduce.c \
|
|
src/test/test_keypin.c \
|
|
src/test/test_link_handshake.c \
|
|
src/test/test_logging.c \
|
|
src/test/test_microdesc.c \
|
|
src/test/test_nodelist.c \
|
|
src/test/test_oom.c \
|
|
src/test/test_oos.c \
|
|
src/test/test_options.c \
|
|
src/test/test_policy.c \
|
|
src/test/test_procmon.c \
|
|
src/test/test_protover.c \
|
|
src/test/test_pt.c \
|
|
src/test/test_pubsub.c \
|
|
src/test/test_relay.c \
|
|
src/test/test_relaycell.c \
|
|
src/test/test_rendcache.c \
|
|
src/test/test_replay.c \
|
|
src/test/test_routerkeys.c \
|
|
src/test/test_routerlist.c \
|
|
src/test/test_routerset.c \
|
|
src/test/test_scheduler.c \
|
|
src/test/test_shared_random.c \
|
|
src/test/test_socks.c \
|
|
src/test/test_status.c \
|
|
src/test/test_storagedir.c \
|
|
src/test/test_threads.c \
|
|
src/test/test_tortls.c \
|
|
src/test/test_util.c \
|
|
src/test/test_util_format.c \
|
|
src/test/test_util_process.c \
|
|
src/test/test_helpers.c \
|
|
src/test/test_dns.c \
|
|
src/test/testing_common.c \
|
|
src/test/testing_rsakeys.c \
|
|
src/ext/tinytest.c
|
|
|
|
src_test_test_slow_SOURCES = \
|
|
src/test/test_slow.c \
|
|
src/test/test_crypto_slow.c \
|
|
src/test/test_util_slow.c \
|
|
src/test/testing_common.c \
|
|
src/test/testing_rsakeys.c \
|
|
src/ext/tinytest.c
|
|
|
|
src_test_test_memwipe_SOURCES = \
|
|
src/test/test-memwipe.c
|
|
|
|
src_test_test_timers_SOURCES = \
|
|
src/test/test-timers.c
|
|
|
|
src_test_test_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)
|
|
|
|
src_test_test_CPPFLAGS= $(src_test_AM_CPPFLAGS) $(TEST_CPPFLAGS)
|
|
|
|
src_test_bench_SOURCES = \
|
|
src/test/bench.c
|
|
|
|
src_test_test_workqueue_SOURCES = \
|
|
src/test/test_workqueue.c
|
|
src_test_test_workqueue_CPPFLAGS= $(src_test_AM_CPPFLAGS)
|
|
src_test_test_workqueue_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)
|
|
|
|
src_test_test_switch_id_SOURCES = \
|
|
src/test/test_switch_id.c
|
|
src_test_test_switch_id_CPPFLAGS= $(src_test_AM_CPPFLAGS)
|
|
src_test_test_switch_id_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)
|
|
src_test_test_switch_id_LDFLAGS = @TOR_LDFLAGS_zlib@
|
|
src_test_test_switch_id_LDADD = \
|
|
src/common/libor-testing.a \
|
|
src/common/libor-ctime-testing.a \
|
|
@TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ \
|
|
@TOR_LZMA_LIBS@ @TOR_ZSTD_LIBS@
|
|
|
|
src_test_test_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \
|
|
@TOR_LDFLAGS_libevent@
|
|
src_test_test_LDADD = src/or/libtor-testing.a \
|
|
src/common/libor-crypto-testing.a \
|
|
$(LIBKECCAK_TINY) \
|
|
$(LIBDONNA) \
|
|
src/common/libor-testing.a \
|
|
src/common/libor-ctime-testing.a \
|
|
src/common/libor-event-testing.a \
|
|
src/trunnel/libor-trunnel-testing.a \
|
|
src/trace/libor-trace.a \
|
|
@TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \
|
|
@TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ \
|
|
@TOR_SYSTEMD_LIBS@ @TOR_LZMA_LIBS@ @TOR_ZSTD_LIBS@
|
|
|
|
src_test_test_slow_CPPFLAGS = $(src_test_test_CPPFLAGS)
|
|
src_test_test_slow_CFLAGS = $(src_test_test_CFLAGS)
|
|
src_test_test_slow_LDADD = $(src_test_test_LDADD)
|
|
src_test_test_slow_LDFLAGS = $(src_test_test_LDFLAGS)
|
|
|
|
src_test_test_memwipe_CPPFLAGS = $(src_test_test_CPPFLAGS)
|
|
# Don't use bugtrap cflags here: memwipe tests require memory violations.
|
|
src_test_test_memwipe_CFLAGS = $(TEST_CFLAGS)
|
|
src_test_test_memwipe_LDADD = $(src_test_test_LDADD)
|
|
# The LDFLAGS need to include the bugtrap cflags, or else we won't link
|
|
# successfully with the libraries built with them.
|
|
src_test_test_memwipe_LDFLAGS = $(src_test_test_LDFLAGS) @CFLAGS_BUGTRAP@
|
|
|
|
src_test_bench_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \
|
|
@TOR_LDFLAGS_libevent@
|
|
src_test_bench_LDADD = src/or/libtor.a src/common/libor.a \
|
|
src/common/libor-ctime.a \
|
|
src/common/libor-crypto.a $(LIBKECCAK_TINY) $(LIBDONNA) \
|
|
src/common/libor-event.a src/trunnel/libor-trunnel.a \
|
|
src/trace/libor-trace.a \
|
|
@TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \
|
|
@TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ \
|
|
@TOR_SYSTEMD_LIBS@ @TOR_LZMA_LIBS@ @TOR_ZSTD_LIBS@
|
|
|
|
src_test_test_workqueue_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \
|
|
@TOR_LDFLAGS_libevent@
|
|
src_test_test_workqueue_LDADD = src/or/libtor-testing.a \
|
|
src/common/libor-testing.a \
|
|
src/common/libor-ctime-testing.a \
|
|
src/common/libor-crypto-testing.a $(LIBKECCAK_TINY) $(LIBDONNA) \
|
|
src/common/libor-event-testing.a \
|
|
src/trace/libor-trace.a \
|
|
@TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \
|
|
@TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ \
|
|
@TOR_LZMA_LIBS@ @TOR_ZSTD_LIBS@
|
|
|
|
src_test_test_timers_CPPFLAGS = $(src_test_test_CPPFLAGS)
|
|
src_test_test_timers_CFLAGS = $(src_test_test_CFLAGS)
|
|
src_test_test_timers_LDADD = \
|
|
src/common/libor-testing.a \
|
|
src/common/libor-ctime-testing.a \
|
|
src/common/libor-event-testing.a \
|
|
src/common/libor-crypto-testing.a $(LIBKECCAK_TINY) $(LIBDONNA) \
|
|
@TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \
|
|
@TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ \
|
|
@TOR_LZMA_LIBS@
|
|
src_test_test_timers_LDFLAGS = $(src_test_test_LDFLAGS)
|
|
|
|
noinst_HEADERS+= \
|
|
src/test/fakechans.h \
|
|
src/test/log_test_helpers.h \
|
|
src/test/rend_test_helpers.h \
|
|
src/test/test.h \
|
|
src/test/test_helpers.h \
|
|
src/test/test_dir_common.h \
|
|
src/test/test_descriptors.inc \
|
|
src/test/example_extrainfo.inc \
|
|
src/test/failing_routerdescs.inc \
|
|
src/test/ed25519_vectors.inc \
|
|
src/test/test_descriptors.inc \
|
|
src/test/vote_descriptors.inc
|
|
|
|
noinst_PROGRAMS+= src/test/test-ntor-cl
|
|
noinst_PROGRAMS+= src/test/test-hs-ntor-cl
|
|
src_test_test_ntor_cl_SOURCES = src/test/test_ntor_cl.c
|
|
src_test_test_ntor_cl_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@
|
|
src_test_test_ntor_cl_LDADD = src/or/libtor.a src/common/libor.a \
|
|
src/common/libor-ctime.a \
|
|
src/common/libor-crypto.a $(LIBKECCAK_TINY) $(LIBDONNA) \
|
|
src/trace/libor-trace.a \
|
|
@TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ \
|
|
@TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ \
|
|
@TOR_LZMA_LIBS@
|
|
src_test_test_ntor_cl_AM_CPPFLAGS = \
|
|
-I"$(top_srcdir)/src/or"
|
|
|
|
src_test_test_hs_ntor_cl_SOURCES = src/test/test_hs_ntor_cl.c
|
|
src_test_test_hs_ntor_cl_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@
|
|
src_test_test_hs_ntor_cl_LDADD = src/or/libtor.a src/common/libor.a \
|
|
src/common/libor-ctime.a \
|
|
src/common/libor-crypto.a $(LIBKECCAK_TINY) $(LIBDONNA) \
|
|
@TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ \
|
|
@TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@
|
|
src_test_test_hs_ntor_cl_AM_CPPFLAGS = \
|
|
-I"$(top_srcdir)/src/or"
|
|
|
|
|
|
noinst_PROGRAMS += src/test/test-bt-cl
|
|
src_test_test_bt_cl_SOURCES = src/test/test_bt_cl.c
|
|
src_test_test_bt_cl_LDADD = src/common/libor-testing.a \
|
|
src/common/libor-ctime-testing.a \
|
|
src/trace/libor-trace.a \
|
|
@TOR_LIB_MATH@ \
|
|
@TOR_LIB_WS32@ @TOR_LIB_GDI@
|
|
src_test_test_bt_cl_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)
|
|
src_test_test_bt_cl_CPPFLAGS= $(src_test_AM_CPPFLAGS) $(TEST_CPPFLAGS)
|
|
|
|
EXTRA_DIST += \
|
|
src/test/bt_test.py \
|
|
src/test/ntor_ref.py \
|
|
src/test/hs_ntor_ref.py \
|
|
src/test/fuzz_static_testcases.sh \
|
|
src/test/slownacl_curve25519.py \
|
|
src/test/zero_length_keys.sh \
|
|
src/test/test_keygen.sh \
|
|
src/test/test_zero_length_keys.sh \
|
|
src/test/test_ntor.sh src/test/test_hs_ntor.sh src/test/test_bt.sh \
|
|
src/test/test-network.sh \
|
|
src/test/test_switch_id.sh \
|
|
src/test/test_workqueue_cancel.sh \
|
|
src/test/test_workqueue_efd.sh \
|
|
src/test/test_workqueue_efd2.sh \
|
|
src/test/test_workqueue_pipe.sh \
|
|
src/test/test_workqueue_pipe2.sh \
|
|
src/test/test_workqueue_socketpair.sh
|
|
|