[or-cvs] r12188: Fix more memory leaks, with help from dmalloc. (in tor/trunk: . src/or)

nickm at seul.org nickm at seul.org
Thu Oct 25 14:31:15 UTC 2007


Author: nickm
Date: 2007-10-25 10:31:15 -0400 (Thu, 25 Oct 2007)
New Revision: 12188

Modified:
   tor/trunk/
   tor/trunk/ChangeLog
   tor/trunk/src/or/dirserv.c
   tor/trunk/src/or/networkstatus.c
   tor/trunk/src/or/routerparse.c
Log:
 r16154 at catbus:  nickm | 2007-10-25 10:29:47 -0400
 Fix more memory leaks, with help from dmalloc.



Property changes on: tor/trunk
___________________________________________________________________
 svk:merge ticket from /tor/trunk [r16154] on 8246c3cf-6607-4228-993b-4d95d33730f1

Modified: tor/trunk/ChangeLog
===================================================================
--- tor/trunk/ChangeLog	2007-10-25 14:31:13 UTC (rev 12187)
+++ tor/trunk/ChangeLog	2007-10-25 14:31:15 UTC (rev 12188)
@@ -2,10 +2,20 @@
   o Minor bugfixes:
     - Refuse to start if both ORPort and UseBridges are set. Bugfix
       on 0.2.0.x.
+
+  o Minor bugfixes (memory leaks):
     - Stop leaking memory every time we parse a v3 certificate. Bugfix
       on 0.2.0.1-alpha.
     - Stop leaking memory every time we load a v3 certificate. Bugfix
-      on 0.2.0.1-alpha.  Fixes Bug 536.
+      on 0.2.0.1-alpha.  Fixes Bug 536
+    - Stop leaking a cached networkstatus on exit.  Bugfix on
+      0.2.0.3-alpha.
+    - Stop leaking voter information every time we free a consensus.  Bugfix
+      on 0.2.0.3-alpha.
+    - Stop leaking signed data every time we check a voter signature.
+      Bugfix on 0.2.0.3-alpha.
+    - Stop leaking a signature every time we fail to parse a consensus or
+      a vote.  Bugfix on 0.2.0.3-alpha.
 
 
 Changes in version 0.2.0.9-alpha - 2007-10-24

Modified: tor/trunk/src/or/dirserv.c
===================================================================
--- tor/trunk/src/or/dirserv.c	2007-10-25 14:31:13 UTC (rev 12187)
+++ tor/trunk/src/or/dirserv.c	2007-10-25 14:31:15 UTC (rev 12188)
@@ -2813,5 +2813,6 @@
     digestmap_free(cached_v2_networkstatus, _free_cached_dir);
     cached_v2_networkstatus = NULL;
   }
+  cached_dir_decref(cached_v3_networkstatus);
 }
 

Modified: tor/trunk/src/or/networkstatus.c
===================================================================
--- tor/trunk/src/or/networkstatus.c	2007-10-25 14:31:13 UTC (rev 12187)
+++ tor/trunk/src/or/networkstatus.c	2007-10-25 14:31:15 UTC (rev 12188)
@@ -231,6 +231,8 @@
       tor_free(voter->nickname);
       tor_free(voter->address);
       tor_free(voter->contact);
+      tor_free(voter->signature);
+      tor_free(voter);
     });
     smartlist_free(ns->voters);
   }
@@ -302,6 +304,7 @@
   } else {
     voter->good_signature = 1;
   }
+  tor_free(signed_digest);
   return 0;
 }
 

Modified: tor/trunk/src/or/routerparse.c
===================================================================
--- tor/trunk/src/or/routerparse.c	2007-10-25 14:31:13 UTC (rev 12187)
+++ tor/trunk/src/or/routerparse.c	2007-10-25 14:31:15 UTC (rev 12188)
@@ -2241,6 +2241,7 @@
     tor_free(voter->nickname);
     tor_free(voter->address);
     tor_free(voter->contact);
+    tor_free(voter->signature);
     tor_free(voter);
   }
   if (rs_tokens) {



More information about the tor-commits mailing list