diff options
author | David Goulet <dgoulet@torproject.org> | 2021-09-30 11:09:48 -0400 |
---|---|---|
committer | David Goulet <dgoulet@torproject.org> | 2021-10-19 09:36:14 -0400 |
commit | df8ff6f1ac1f085d4faa826097aaad878386bc91 (patch) | |
tree | 758e9d950df640c72bf6fb094a8224c99a052795 /src/test/test_hs_config.c | |
parent | 044eadae652ab3b17e5d644c26a69f2751b0fe32 (diff) | |
download | tor-df8ff6f1ac1f085d4faa826097aaad878386bc91.tar.gz tor-df8ff6f1ac1f085d4faa826097aaad878386bc91.zip |
test: Fix unit tests after disabling version 2
Some tests were removed because they were testing something not usable
anymore.
Some tests remains to make sure that things are indeed disabled.
Part of #40476
Signed-off-by: David Goulet <dgoulet@torproject.org>
Diffstat (limited to 'src/test/test_hs_config.c')
-rw-r--r-- | src/test/test_hs_config.c | 201 |
1 files changed, 24 insertions, 177 deletions
diff --git a/src/test/test_hs_config.c b/src/test/test_hs_config.c index dc3b598c34..20e6b014ee 100644 --- a/src/test/test_hs_config.c +++ b/src/test/test_hs_config.c @@ -49,7 +49,19 @@ test_invalid_service(void *arg) setup_full_capture_of_logs(LOG_WARN); ret = helper_config_service(conf, 1); tt_int_op(ret, OP_EQ, -1); - expect_log_msg_containing("HiddenServiceVersion must be between 2 and 3"); + expect_log_msg_containing("HiddenServiceVersion must be 3, not 1"); + teardown_capture_of_logs(); + } + + /* Version 2 not accepted anymore. */ + { + const char *conf = + "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" + "HiddenServiceVersion 2\n"; + setup_full_capture_of_logs(LOG_WARN); + ret = helper_config_service(conf, 1); + tt_int_op(ret, OP_EQ, -1); + expect_log_msg_containing("HiddenServiceVersion must be 3, not 2"); teardown_capture_of_logs(); } @@ -57,7 +69,7 @@ test_invalid_service(void *arg) { const char *conf = "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" + "HiddenServiceVersion 3\n" "HiddenServiceAllowUnknownPorts 2\n"; /* Should be 0 or 1. */ setup_full_capture_of_logs(LOG_WARN); ret = helper_config_service(conf, 1); @@ -72,7 +84,7 @@ test_invalid_service(void *arg) { const char *conf = "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" + "HiddenServiceVersion 3\n" "HiddenServiceDirGroupReadable 2\n"; /* Should be 0 or 1. */ setup_full_capture_of_logs(LOG_WARN); ret = helper_config_service(conf, 1); @@ -87,7 +99,7 @@ test_invalid_service(void *arg) { const char *conf = "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" + "HiddenServiceVersion 3\n" "HiddenServiceMaxStreamsCloseCircuit 2\n"; /* Should be 0 or 1. */ setup_full_capture_of_logs(LOG_WARN); ret = helper_config_service(conf, 1); @@ -102,7 +114,7 @@ test_invalid_service(void *arg) { const char *conf = "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" + "HiddenServiceVersion 3\n" "HiddenServicePort 80\n" "HiddenServiceMaxStreams 65536\n"; /* One too many. */ setup_full_capture_of_logs(LOG_WARN); @@ -117,10 +129,10 @@ test_invalid_service(void *arg) { const char *conf = "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" + "HiddenServiceVersion 3\n" "HiddenServicePort 80\n" "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" + "HiddenServiceVersion 3\n" "HiddenServicePort 81\n"; setup_full_capture_of_logs(LOG_WARN); ret = helper_config_service(conf, 1); @@ -134,7 +146,7 @@ test_invalid_service(void *arg) { const char *conf = "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" + "HiddenServiceVersion 3\n" "HiddenServicePort 65536\n"; setup_full_capture_of_logs(LOG_WARN); ret = helper_config_service(conf, 1); @@ -147,7 +159,7 @@ test_invalid_service(void *arg) { const char *conf = "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" + "HiddenServiceVersion 3\n" "HiddenServicePort 80 127.0.0.1 8000\n"; setup_full_capture_of_logs(LOG_WARN); ret = helper_config_service(conf, 1); @@ -160,7 +172,7 @@ test_invalid_service(void *arg) /* Out of order directives. */ { const char *conf = - "HiddenServiceVersion 2\n" + "HiddenServiceVersion 3\n" "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" "HiddenServicePort 80\n"; setup_full_capture_of_logs(LOG_WARN); @@ -182,18 +194,12 @@ test_valid_service(void *arg) (void) arg; - /* Mix of v2 and v3. Still valid. */ + /* v3. */ { const char *conf = - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" - "HiddenServicePort 80\n" "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs2\n" "HiddenServiceVersion 3\n" - "HiddenServicePort 81\n" - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs3\n" - "HiddenServiceVersion 2\n" - "HiddenServicePort 82\n"; + "HiddenServicePort 81\n"; ret = helper_config_service(conf, 1); tt_int_op(ret, OP_EQ, 0); } @@ -203,127 +209,6 @@ test_valid_service(void *arg) } static void -test_invalid_service_v2(void *arg) -{ - int validate_only = 1, ret; - - (void) arg; - - /* Try with a missing port configuration. */ - { - const char *conf = - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n"; - setup_full_capture_of_logs(LOG_WARN); - ret = helper_config_service(conf, validate_only); - tt_int_op(ret, OP_EQ, -1); - expect_log_msg_containing("with no ports configured."); - teardown_capture_of_logs(); - } - - /* Too many introduction points. */ - { - const char *conf = - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" - "HiddenServicePort 80\n" - "HiddenServiceNumIntroductionPoints 11\n"; /* One too many. */ - setup_full_capture_of_logs(LOG_WARN); - ret = helper_config_service(conf, validate_only); - tt_int_op(ret, OP_EQ, -1); - expect_log_msg_containing("HiddenServiceNumIntroductionPoints must " - "be between 0 and 10, not 11."); - teardown_capture_of_logs(); - } - - /* Too little introduction points. */ - { - const char *conf = - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" - "HiddenServicePort 80\n" - "HiddenServiceNumIntroductionPoints -1\n"; - setup_full_capture_of_logs(LOG_WARN); - ret = helper_config_service(conf, validate_only); - tt_int_op(ret, OP_EQ, -1); - expect_log_msg_containing("Could not parse " - "HiddenServiceNumIntroductionPoints: " - "Integer -1 is malformed or out of bounds."); - teardown_capture_of_logs(); - } - - /* Bad authorized client type. */ - { - const char *conf = - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" - "HiddenServicePort 80\n" - "HiddenServiceAuthorizeClient blah alice,bob\n"; /* blah is no good. */ - setup_full_capture_of_logs(LOG_WARN); - ret = helper_config_service(conf, validate_only); - tt_int_op(ret, OP_EQ, -1); - expect_log_msg_containing("HiddenServiceAuthorizeClient contains " - "unrecognized auth-type"); - teardown_capture_of_logs(); - } - - done: - ; -} - -static void -test_valid_service_v2(void *arg) -{ - int ret; - - (void) arg; - mock_hostname_resolver(); - - /* Valid complex configuration. Basic client authorization. */ - { - const char *conf = - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" - "HiddenServicePort 80\n" - "HiddenServicePort 22 localhost:22\n" -#ifdef HAVE_SYS_UN_H - "HiddenServicePort 42 unix:/path/to/socket\n" -#endif - "HiddenServiceAuthorizeClient basic alice,bob,eve\n" - "HiddenServiceAllowUnknownPorts 1\n" - "HiddenServiceMaxStreams 42\n" - "HiddenServiceMaxStreamsCloseCircuit 0\n" - "HiddenServiceDirGroupReadable 1\n" - "HiddenServiceNumIntroductionPoints 7\n"; - ret = helper_config_service(conf, 1); - tt_int_op(ret, OP_EQ, 0); - } - - /* Valid complex configuration. Stealth client authorization. */ - { - const char *conf = - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs2\n" - "HiddenServiceVersion 2\n" - "HiddenServicePort 65535\n" - "HiddenServicePort 22 1.1.1.1:22\n" -#ifdef HAVE_SYS_UN_H - "HiddenServicePort 9000 unix:/path/to/socket\n" -#endif - "HiddenServiceAuthorizeClient stealth charlie,romeo\n" - "HiddenServiceAllowUnknownPorts 0\n" - "HiddenServiceMaxStreams 42\n" - "HiddenServiceMaxStreamsCloseCircuit 0\n" - "HiddenServiceDirGroupReadable 1\n" - "HiddenServiceNumIntroductionPoints 8\n"; - ret = helper_config_service(conf, 1); - tt_int_op(ret, OP_EQ, 0); - } - - done: - unmock_hostname_resolver(); -} - -static void test_invalid_service_v3(void *arg) { int validate_only = 1, ret; @@ -372,22 +257,6 @@ test_invalid_service_v3(void *arg) teardown_capture_of_logs(); } - /* v2-specific HiddenServiceAuthorizeClient set. */ - { - const char *conf = - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 3\n" - "HiddenServiceAuthorizeClient stealth client1\n"; - setup_full_capture_of_logs(LOG_WARN); - ret = helper_config_service(conf, validate_only); - tt_int_op(ret, OP_EQ, -1); - expect_log_msg_containing("Hidden service option " - "HiddenServiceAuthorizeClient is incompatible " - "with version 3 of service in " - "/tmp/tor-test-hs-RANDOM/hs1"); - teardown_capture_of_logs(); - } - done: ; } @@ -438,22 +307,6 @@ test_valid_service_v3(void *arg) tt_int_op(ret, OP_EQ, 0); } - /* Mix of v2 and v3. Still valid. */ - { - const char *conf = - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs1\n" - "HiddenServiceVersion 2\n" - "HiddenServicePort 80\n" - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs2\n" - "HiddenServiceVersion 3\n" - "HiddenServicePort 81\n" - "HiddenServiceDir /tmp/tor-test-hs-RANDOM/hs3\n" - "HiddenServiceVersion 2\n" - "HiddenServicePort 82\n"; - ret = helper_config_service(conf, 1); - tt_int_op(ret, OP_EQ, 0); - } - done: unmock_hostname_resolver(); } @@ -611,12 +464,6 @@ struct testcase_t hs_config_tests[] = { { "valid_service", test_valid_service, TT_FORK, NULL, NULL }, - /* Test case only for version 2. */ - { "invalid_service_v2", test_invalid_service_v2, TT_FORK, - NULL, NULL }, - { "valid_service_v2", test_valid_service_v2, TT_FORK, - NULL, NULL }, - /* Test case only for version 3. */ { "invalid_service_v3", test_invalid_service_v3, TT_FORK, NULL, NULL }, |