mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-27 22:03:31 +01:00
Fix unit tests to work after own_link_cert assertion
The assert_nonfatal() I had added was triggered by some of the code that tested the pre-ed case of CERTS cell generation.
This commit is contained in:
parent
d5acdadaef
commit
91f49bc0f0
@ -2270,6 +2270,12 @@ add_ed25519_cert(certs_cell_t *certs_cell,
|
|||||||
cert->encoded, cert->encoded_len);
|
cert->encoded, cert->encoded_len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef TOR_UNIT_TESTS
|
||||||
|
int certs_cell_ed25519_disabled_for_testing = 0;
|
||||||
|
#else
|
||||||
|
#define certs_cell_ed25519_disabled_for_testing 0
|
||||||
|
#endif
|
||||||
|
|
||||||
/** Send a CERTS cell on the connection <b>conn</b>. Return 0 on success, -1
|
/** Send a CERTS cell on the connection <b>conn</b>. Return 0 on success, -1
|
||||||
* on failure. */
|
* on failure. */
|
||||||
int
|
int
|
||||||
@ -2320,7 +2326,8 @@ connection_or_send_certs_cell(or_connection_t *conn)
|
|||||||
CERTTYPE_ED_ID_SIGN,
|
CERTTYPE_ED_ID_SIGN,
|
||||||
get_master_signing_key_cert());
|
get_master_signing_key_cert());
|
||||||
if (conn_in_server_mode) {
|
if (conn_in_server_mode) {
|
||||||
tor_assert_nonfatal(conn->handshake_state->own_link_cert);
|
tor_assert_nonfatal(conn->handshake_state->own_link_cert ||
|
||||||
|
certs_cell_ed25519_disabled_for_testing);
|
||||||
add_ed25519_cert(certs_cell,
|
add_ed25519_cert(certs_cell,
|
||||||
CERTTYPE_ED_SIGN_LINK,
|
CERTTYPE_ED_SIGN_LINK,
|
||||||
conn->handshake_state->own_link_cert);
|
conn->handshake_state->own_link_cert);
|
||||||
|
@ -112,5 +112,9 @@ void var_cell_free(var_cell_t *cell);
|
|||||||
|
|
||||||
void connection_or_group_set_badness_(smartlist_t *group, int force);
|
void connection_or_group_set_badness_(smartlist_t *group, int force);
|
||||||
|
|
||||||
|
#ifdef TOR_UNIT_TESTS
|
||||||
|
extern int certs_cell_ed25519_disabled_for_testing;
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -149,6 +149,8 @@ test_link_handshake_certs_ok(void *arg)
|
|||||||
/* If we're making a CERTS cell for an ed handshake, let's make sure we
|
/* If we're making a CERTS cell for an ed handshake, let's make sure we
|
||||||
* have some Ed25519 certificates and keys. */
|
* have some Ed25519 certificates and keys. */
|
||||||
init_mock_ed_keys(key2);
|
init_mock_ed_keys(key2);
|
||||||
|
} else {
|
||||||
|
certs_cell_ed25519_disabled_for_testing = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* c1 has started_here == 1 */
|
/* c1 has started_here == 1 */
|
||||||
|
Loading…
Reference in New Issue
Block a user