relay: Remove unused conn->ext_or_conn_id

This also incidently removes a use of uninitialized stack data from the
connection_or_set_ext_or_identifier() function.

Fixes #40648

Signed-off-by: David Goulet <dgoulet@torproject.org>
This commit is contained in:
David Goulet 2022-07-26 11:18:15 -04:00
parent 619dd35321
commit d634a5ebc7
5 changed files with 3 additions and 21 deletions

3
changes/ticket40648 Normal file
View File

@ -0,0 +1,3 @@
o Code simplification and refactoring (bridges):
- Remove unused code related to ExtPort connection ID. Fixes bug 40648;
bugfix on 0.3.5.1-alpha.

View File

@ -590,7 +590,6 @@ or_connection_new(int type, int socket_family)
/* If we aren't told an address for this connection, we should /* If we aren't told an address for this connection, we should
* presume it isn't local, and should be rate-limited. */ * presume it isn't local, and should be rate-limited. */
TO_CONN(or_conn)->always_rate_limit_as_remote = 1; TO_CONN(or_conn)->always_rate_limit_as_remote = 1;
connection_or_set_ext_or_identifier(or_conn);
} }
return or_conn; return or_conn;
@ -960,7 +959,6 @@ connection_free_minimal(connection_t *conn)
connection_or_clear_identity(TO_OR_CONN(conn)); connection_or_clear_identity(TO_OR_CONN(conn));
} }
if (conn->type == CONN_TYPE_OR || conn->type == CONN_TYPE_EXT_OR) { if (conn->type == CONN_TYPE_OR || conn->type == CONN_TYPE_EXT_OR) {
tor_free(TO_OR_CONN(conn)->ext_or_conn_id);
tor_free(TO_OR_CONN(conn)->ext_or_auth_correct_client_hash); tor_free(TO_OR_CONN(conn)->ext_or_auth_correct_client_hash);
tor_free(TO_OR_CONN(conn)->ext_or_transport); tor_free(TO_OR_CONN(conn)->ext_or_transport);
} }

View File

@ -26,8 +26,6 @@ struct or_connection_t {
* if the other side hasn't shown us a valid identity key. */ * if the other side hasn't shown us a valid identity key. */
char identity_digest[DIGEST_LEN]; char identity_digest[DIGEST_LEN];
/** Extended ORPort connection identifier. */
char *ext_or_conn_id;
/** This is the ClientHash value we expect to receive from the /** This is the ClientHash value we expect to receive from the
* client during the Extended ORPort authentication protocol. We * client during the Extended ORPort authentication protocol. We
* compute it upon receiving the ClientNoce from the client, and we * compute it upon receiving the ClientNoce from the client, and we

View File

@ -656,19 +656,6 @@ connection_ext_or_start_auth(or_connection_t *or_conn)
return 0; return 0;
} }
/** Creates an Extended ORPort identifier for <b>conn</b> and deposits
* it into the global list of identifiers. */
void
connection_or_set_ext_or_identifier(or_connection_t *conn)
{
char random_id[EXT_OR_CONN_ID_LEN];
if (!conn->ext_or_conn_id)
conn->ext_or_conn_id = tor_malloc_zero(EXT_OR_CONN_ID_LEN);
memcpy(conn->ext_or_conn_id, random_id, EXT_OR_CONN_ID_LEN);
}
/** Free any leftover allocated memory of the ext_orport.c subsystem. */ /** Free any leftover allocated memory of the ext_orport.c subsystem. */
void void
ext_orport_free_all(void) ext_orport_free_all(void)

View File

@ -35,7 +35,6 @@
int connection_ext_or_start_auth(or_connection_t *or_conn); int connection_ext_or_start_auth(or_connection_t *or_conn);
void connection_or_set_ext_or_identifier(or_connection_t *conn);
int connection_ext_or_finished_flushing(or_connection_t *conn); int connection_ext_or_finished_flushing(or_connection_t *conn);
int connection_ext_or_process_inbuf(or_connection_t *or_conn); int connection_ext_or_process_inbuf(or_connection_t *or_conn);
char *get_ext_or_auth_cookie_file_name(void); char *get_ext_or_auth_cookie_file_name(void);
@ -67,9 +66,6 @@ connection_ext_or_process_inbuf(or_connection_t *conn)
tor_assert_nonfatal_unreached(); tor_assert_nonfatal_unreached();
return -1; return -1;
} }
#define connection_or_set_ext_or_identifier(conn) \
((void)(conn))
#define get_ext_or_auth_cookie_file_name() \ #define get_ext_or_auth_cookie_file_name() \
(NULL) (NULL)