]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Minor IPv6-related memory leak fixes
authorTom van der Woerdt <info@tvdw.eu>
Tue, 6 Jan 2015 18:40:23 +0000 (19:40 +0100)
committerTom van der Woerdt <info@tvdw.eu>
Tue, 6 Jan 2015 18:40:23 +0000 (19:40 +0100)
src/or/addressmap.c

index 33f11cb0ec7966288ef50a55e17cb289aab5cd7c..ece69ea6e6850b876b3406673b320dd3fc81cad1 100644 (file)
@@ -104,6 +104,7 @@ addressmap_virtaddress_ent_free(void *_ent)
 
   ent = _ent;
   tor_free(ent->ipv4_address);
+  tor_free(ent->ipv6_address);
   tor_free(ent->hostname_address);
   tor_free(ent);
 }
@@ -121,9 +122,11 @@ addressmap_virtaddress_remove(const char *address, addressmap_entry_t *ent)
     if (ve) {
       if (!strcmp(address, ve->ipv4_address))
         tor_free(ve->ipv4_address);
+      if (!strcmp(address, ve->ipv6_address))
+        tor_free(ve->ipv6_address);
       if (!strcmp(address, ve->hostname_address))
         tor_free(ve->hostname_address);
-      if (!ve->ipv4_address && !ve->hostname_address) {
+      if (!ve->ipv4_address && !ve->ipv6_address && !ve->hostname_address) {
         tor_free(ve);
         strmap_remove(virtaddress_reversemap, ent->new_address);
       }