From 3ee9a6d6fdde3a05620e6c0e14eea6a1957616f4 Mon Sep 17 00:00:00 2001 From: David Goulet Date: Mon, 7 Nov 2016 10:49:10 -0500 Subject: [PATCH] hs: Remove EnableOnionServiceV3 consensus param As of #19899, we decided to allow any relay understanding the onion service version 3 protocol to be able to use it. The service and client will be the one controlled by a consensus parameter (different one for both of them) but if you are a relay and you can understand a protocol, basically you should use the feature. Closes #19899 Signed-off-by: David Goulet --- src/or/directory.c | 14 -------------- src/or/hs_common.c | 15 --------------- src/or/hs_common.h | 2 -- 3 files changed, 31 deletions(-) diff --git a/src/or/directory.c b/src/or/directory.c index 8c7953020d..257bd2993e 100644 --- a/src/or/directory.c +++ b/src/or/directory.c @@ -3443,13 +3443,6 @@ handle_get_hs_descriptor_v3(dir_connection_t *conn, const char *pubkey_str = NULL; const char *url = args->url; - /* Don't serve v3 descriptors if next gen onion service is disabled. */ - if (!hs_v3_protocol_is_enabled()) { - /* 404 is used for an unrecognized URL so send back the same. */ - write_http_status_line(conn, 404, "Not found"); - goto done; - } - /* Reject unencrypted dir connections */ if (!connection_dir_is_encrypted(conn)) { write_http_status_line(conn, 404, "Not found"); @@ -3664,13 +3657,6 @@ directory_handle_command_post(dir_connection_t *conn, const char *headers, * the prop224 be deployed and thus use. */ if (connection_dir_is_encrypted(conn) && !strcmpstart(url, "/tor/hs/")) { const char *msg = "HS descriptor stored successfully."; - /* Don't accept v3 and onward publish request if next gen onion service is - * disabled. */ - if (!hs_v3_protocol_is_enabled()) { - /* 404 is used for an unrecognized URL so send back the same. */ - write_http_status_line(conn, 404, "Not found"); - goto done; - } /* We most probably have a publish request for an HS descriptor. */ int code = handle_post_hs_descriptor(url, body); diff --git a/src/or/hs_common.c b/src/or/hs_common.c index b7ee888842..07fd27445f 100644 --- a/src/or/hs_common.c +++ b/src/or/hs_common.c @@ -264,18 +264,3 @@ rend_data_get_pk_digest(const rend_data_t *rend_data, size_t *len_out) tor_assert(0); } } - -/* Return true iff the Onion Services protocol version 3 is enabled. This only - * considers the consensus parameter. If the parameter is not found, the - * default is that it's enabled. */ -int -hs_v3_protocol_is_enabled(void) -{ - /* This consensus param controls if the the onion services version 3 is - * enabled or not which is the first version of the next generation - * (proposal 224). If this option is set to 0, the tor daemon won't support - * the protocol as either a relay, directory, service or client. By default, - * it's enabled if the parameter is not found. */ - return networkstatus_get_param(NULL, "EnableOnionServicesV3", 1, 0, 1); -} - diff --git a/src/or/hs_common.h b/src/or/hs_common.h index 2502f35ad4..1d3a15df5a 100644 --- a/src/or/hs_common.h +++ b/src/or/hs_common.h @@ -33,7 +33,5 @@ const char *rend_data_get_desc_id(const rend_data_t *rend_data, const uint8_t *rend_data_get_pk_digest(const rend_data_t *rend_data, size_t *len_out); -int hs_v3_protocol_is_enabled(void); - #endif /* TOR_HS_COMMON_H */