Don't leak an extend_info_t in rend_client_any_intro_points_usable

This commit is contained in:
Robert Ransom 2011-11-07 08:35:51 -08:00
parent 972564630e
commit 65a0d7e7ef
2 changed files with 14 additions and 2 deletions

6
changes/bug4424 Normal file
View File

@ -0,0 +1,6 @@
o Major bugfixes
- Don't leak memory when we check whether a hidden service
descriptor has any usable introduction points left. Fixes bug
4424. Bugfix on 0.2.2.25-alpha; found by frosty_un.

View File

@ -952,8 +952,14 @@ rend_client_get_random_intro_impl(const rend_cache_entry_t *entry,
int
rend_client_any_intro_points_usable(const rend_cache_entry_t *entry)
{
return rend_client_get_random_intro_impl(
entry, get_options()->StrictNodes, 0) != NULL;
extend_info_t *extend_info =
rend_client_get_random_intro_impl(entry, get_options()->StrictNodes, 0);
int rv = extend_info != NULL;
if (extend_info != NULL)
extend_info_free(extend_info);
return rv;
}
/** Client-side authorizations for hidden services; map of onion address to