[tor-commits] [tor/release-0.2.9] Fix major errors in freeing getaddrinfo sandbox cache

nickm at torproject.org nickm at torproject.org
Wed Dec 7 15:52:42 UTC 2016


commit 6a069959c6afac90231def95712b08b887735192
Author: Nick Mathewson <nickm at torproject.org>
Date:   Thu Dec 1 10:36:02 2016 -0500

    Fix major errors in freeing getaddrinfo sandbox cache
    
    Patch from cypherpunks. Fixes bug 20710; bugfix on 0.2.5.5-alpha.
---
 src/common/sandbox.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/common/sandbox.c b/src/common/sandbox.c
index e43b64b..1059007 100644
--- a/src/common/sandbox.c
+++ b/src/common/sandbox.c
@@ -1486,13 +1486,14 @@ sandbox_add_addrinfo(const char *name)
 void
 sandbox_free_getaddrinfo_cache(void)
 {
-  cached_getaddrinfo_item_t **next, **item;
+  cached_getaddrinfo_item_t **next, **item, *this;
 
   for (item = HT_START(getaddrinfo_cache, &getaddrinfo_cache);
        item;
        item = next) {
+    this = *item;
     next = HT_NEXT_RMV(getaddrinfo_cache, &getaddrinfo_cache, item);
-    cached_getaddrinfo_item_free(*item);
+    cached_getaddrinfo_item_free(this);
   }
 
   HT_CLEAR(getaddrinfo_cache, &getaddrinfo_cache);





More information about the tor-commits mailing list