Merge branch 'maint-0.3.4'

This commit is contained in:
Nick Mathewson 2018-06-29 13:06:16 -04:00
commit 7a47379f25
6 changed files with 18 additions and 6 deletions

3
changes/ticket26467 Normal file
View File

@ -0,0 +1,3 @@
o Minor bugfixes (memory, correctness):
- Fix a number of small memory leaks identified by coverity. Fixes
bug 26467; bugfix on numerous Tor versions.

View File

@ -3703,6 +3703,7 @@ client_likes_consensus(const struct consensus_cache_entry_t *ent,
int have = 0;
if (consensus_cache_entry_get_voter_id_digests(ent, voters) != 0) {
smartlist_free(voters);
return 1; // We don't know the voters; assume the client won't mind. */
}

View File

@ -1129,6 +1129,7 @@ decode_link_specifiers(const char *encoded)
sizeof(hs_spec->u.ed25519_id));
break;
default:
tor_free(hs_spec);
goto err;
}

View File

@ -86,6 +86,9 @@ hs_helper_build_intro_point(const ed25519_keypair_t *signing_kp, time_t now,
intro_point = ip;
done:
if (intro_point == NULL)
tor_free(ip);
return intro_point;
}
@ -143,6 +146,9 @@ hs_helper_build_hs_desc_impl(unsigned int no_ip,
descp = desc;
done:
if (descp == NULL)
tor_free(desc);
return descp;
}

View File

@ -774,6 +774,8 @@ test_channelpadding_consensus(void *arg)
tt_i64_op(val, OP_LE, 24*60*60*2);
done:
tor_free(relay);
free_mock_consensus();
free_fake_channeltls((channel_tls_t*)chan);
smartlist_free(connection_array);

View File

@ -176,6 +176,9 @@ test_link_specifier(void *arg)
ssize_t ret;
hs_desc_link_specifier_t spec;
smartlist_t *link_specifiers = smartlist_new();
char buf[256];
char *b64 = NULL;
link_specifier_t *ls = NULL;
(void) arg;
@ -185,9 +188,7 @@ test_link_specifier(void *arg)
/* Test IPv4 for starter. */
{
char *b64, buf[256];
uint32_t ipv4;
link_specifier_t *ls;
spec.type = LS_IPV4;
ret = tor_addr_parse(&spec.u.ap.addr, "1.2.3.4");
@ -214,9 +215,7 @@ test_link_specifier(void *arg)
/* Test IPv6. */
{
char *b64, buf[256];
uint8_t ipv6[16];
link_specifier_t *ls;
spec.type = LS_IPV6;
ret = tor_addr_parse(&spec.u.ap.addr, "[1:2:3:4::]");
@ -246,9 +245,7 @@ test_link_specifier(void *arg)
/* Test legacy. */
{
char *b64, buf[256];
uint8_t *id;
link_specifier_t *ls;
spec.type = LS_LEGACY_ID;
memset(spec.u.legacy_id, 'Y', sizeof(spec.u.legacy_id));
@ -274,6 +271,8 @@ test_link_specifier(void *arg)
}
done:
link_specifier_free(ls);
tor_free(b64);
smartlist_free(link_specifiers);
}