mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-12 13:43:36 +01:00
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 <dgoulet@torproject.org>
This commit is contained in:
parent
800dff1308
commit
3ee9a6d6fd
@ -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);
|
||||
|
@ -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);
|
||||
}
|
||||
|
||||
|
@ -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 */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user