mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 13:13:44 +01:00
Merge branch 'maint-0.2.1' into merge_tmp
This commit is contained in:
commit
14a549552a
@ -36,6 +36,13 @@ Changes in version 0.2.1.15??? - ????-??-??
|
|||||||
memory right up to the end of a memarea, then realigned the
|
memory right up to the end of a memarea, then realigned the
|
||||||
memory one step beyond the end. Fixes a possible cause of bug
|
memory one step beyond the end. Fixes a possible cause of bug
|
||||||
930.
|
930.
|
||||||
|
- Stop using malloc_usable_size() to use more area than we had
|
||||||
|
actually allocated: it was safe, but made valgrind really
|
||||||
|
unhappy. Bugfix on 0.2.0.x.
|
||||||
|
- Fix use of freed memory when deciding to mark a non-addable
|
||||||
|
descriptor as never-downloadable. Bugfix on 0.2.1.9-alpha.
|
||||||
|
- Fix a memory leak when v3 directory authorities load their keys
|
||||||
|
and cert from disk. Bugfix on 0.2.0.1-alpha.
|
||||||
|
|
||||||
|
|
||||||
Changes in version 0.2.1.14-rc - 2009-04-12
|
Changes in version 0.2.1.14-rc - 2009-04-12
|
||||||
|
@ -258,7 +258,9 @@ _tor_malloc_roundup(size_t *sizep DMALLOC_PARAMS)
|
|||||||
#ifdef HAVE_MALLOC_GOOD_SIZE
|
#ifdef HAVE_MALLOC_GOOD_SIZE
|
||||||
*sizep = malloc_good_size(*sizep);
|
*sizep = malloc_good_size(*sizep);
|
||||||
return _tor_malloc(*sizep DMALLOC_FN_ARGS);
|
return _tor_malloc(*sizep DMALLOC_FN_ARGS);
|
||||||
#elif defined(HAVE_MALLOC_USABLE_SIZE) && !defined(USE_DMALLOC)
|
#elif 0 && defined(HAVE_MALLOC_USABLE_SIZE) && !defined(USE_DMALLOC)
|
||||||
|
/* Never use malloc_usable_size(); it makes valgrind really unhappy,
|
||||||
|
* and doesn't win much in terms of usable space where it exists. */
|
||||||
void *result = _tor_malloc(*sizep DMALLOC_FN_ARGS);
|
void *result = _tor_malloc(*sizep DMALLOC_FN_ARGS);
|
||||||
*sizep = malloc_usable_size(result);
|
*sizep = malloc_usable_size(result);
|
||||||
return result;
|
return result;
|
||||||
|
@ -330,9 +330,6 @@ load_authority_keyset(int legacy, crypto_pk_env_t **key_out,
|
|||||||
"certificate");
|
"certificate");
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
parsed->cache_info.signed_descriptor_body = cert;
|
|
||||||
parsed->cache_info.signed_descriptor_len = eos-cert;
|
|
||||||
cert = NULL;
|
|
||||||
|
|
||||||
if (*key_out)
|
if (*key_out)
|
||||||
crypto_free_pk_env(*key_out);
|
crypto_free_pk_env(*key_out);
|
||||||
|
@ -3513,6 +3513,7 @@ router_load_routers_from_string(const char *s, const char *eos,
|
|||||||
|
|
||||||
SMARTLIST_FOREACH_BEGIN(routers, routerinfo_t *, ri) {
|
SMARTLIST_FOREACH_BEGIN(routers, routerinfo_t *, ri) {
|
||||||
was_router_added_t r;
|
was_router_added_t r;
|
||||||
|
char d[DIGEST_LEN];
|
||||||
if (requested_fingerprints) {
|
if (requested_fingerprints) {
|
||||||
base16_encode(fp, sizeof(fp), descriptor_digests ?
|
base16_encode(fp, sizeof(fp), descriptor_digests ?
|
||||||
ri->cache_info.signed_descriptor_digest :
|
ri->cache_info.signed_descriptor_digest :
|
||||||
@ -3533,6 +3534,7 @@ router_load_routers_from_string(const char *s, const char *eos,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
memcpy(d, ri->cache_info.signed_descriptor_digest, DIGEST_LEN);
|
||||||
r = router_add_to_routerlist(ri, &msg, from_cache, !from_cache);
|
r = router_add_to_routerlist(ri, &msg, from_cache, !from_cache);
|
||||||
if (WRA_WAS_ADDED(r)) {
|
if (WRA_WAS_ADDED(r)) {
|
||||||
any_changed++;
|
any_changed++;
|
||||||
@ -3541,11 +3543,10 @@ router_load_routers_from_string(const char *s, const char *eos,
|
|||||||
smartlist_clear(changed);
|
smartlist_clear(changed);
|
||||||
} else if (WRA_WAS_REJECTED(r)) {
|
} else if (WRA_WAS_REJECTED(r)) {
|
||||||
download_status_t *dl_status;
|
download_status_t *dl_status;
|
||||||
dl_status = router_get_dl_status_by_descriptor_digest(
|
dl_status = router_get_dl_status_by_descriptor_digest(d);
|
||||||
ri->cache_info.signed_descriptor_digest);
|
|
||||||
if (dl_status) {
|
if (dl_status) {
|
||||||
log_info(LD_GENERAL, "Marking router %s as never downloadable",
|
log_info(LD_GENERAL, "Marking router %s as never downloadable",
|
||||||
hex_str(ri->cache_info.signed_descriptor_digest, DIGEST_LEN));
|
hex_str(d, DIGEST_LEN));
|
||||||
download_status_mark_impossible(dl_status);
|
download_status_mark_impossible(dl_status);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user