commit dfaa5c65f9fbfde9a12d8eb3ed848cab6ed1a5f9 Author: David Goulet dgoulet@torproject.org Date: Thu Aug 24 16:21:44 2017 -0400
test: Fix memory leak in hs_descriptor/decode_bad_signature
Fixes #23319
Signed-off-by: David Goulet dgoulet@torproject.org --- src/or/hs_descriptor.c | 2 +- src/or/hs_descriptor.h | 2 ++ src/test/test_hs_descriptor.c | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/or/hs_descriptor.c b/src/or/hs_descriptor.c index f50e2f851..4bc54bdb2 100644 --- a/src/or/hs_descriptor.c +++ b/src/or/hs_descriptor.c @@ -147,7 +147,7 @@ static token_rule_t hs_desc_intro_point_v3_token_table[] = { };
/* Free the content of the plaintext section of a descriptor. */ -static void +STATIC void desc_plaintext_data_free_contents(hs_desc_plaintext_data_t *desc) { if (!desc) { diff --git a/src/or/hs_descriptor.h b/src/or/hs_descriptor.h index ce225d521..3e82746c3 100644 --- a/src/or/hs_descriptor.h +++ b/src/or/hs_descriptor.h @@ -256,6 +256,8 @@ STATIC int desc_sig_is_valid(const char *b64_sig, const char *encoded_desc, size_t encoded_len); STATIC size_t decode_superencrypted(const char *message, size_t message_len, uint8_t **encrypted_out); +STATIC void desc_plaintext_data_free_contents(hs_desc_plaintext_data_t *desc); + #endif /* HS_DESCRIPTOR_PRIVATE */
#endif /* TOR_HS_DESCRIPTOR_H */ diff --git a/src/test/test_hs_descriptor.c b/src/test/test_hs_descriptor.c index 30a5b23cf..7f0d1dd18 100644 --- a/src/test/test_hs_descriptor.c +++ b/src/test/test_hs_descriptor.c @@ -581,7 +581,8 @@ test_decode_bad_signature(void *arg) expect_log_msg_containing("Malformed signature line. Rejecting."); teardown_capture_of_logs();
- done: ; + done: + desc_plaintext_data_free_contents(&desc_plaintext); }
static void
tor-commits@lists.torproject.org