Browse code

Memory leaks

git-svn: trunk@2549

aCaB authored on 2006/12/10 23:23:08
Showing 4 changed files
... ...
@@ -1,3 +1,7 @@
1
+Sun Dec 10 15:21:28 CET 2006 (acab)
2
+-----------------------------------
3
+  * libclamav: various memleaks fixes (thanks Edvin)
4
+
1 5
 Sat Dec  9 16:37:18 CET 2006 (tk)
2 6
 ---------------------------------
3 7
   * libclamav/rtf.c: fix off-by-one error in hex decoder (bb#190),
... ...
@@ -1206,6 +1206,7 @@ int cli_scanpe(int desc, cli_ctx *ctx)
1206 1206
 		    free(section_hdr);
1207 1207
 		    free(exe_sections);
1208 1208
 		    free(src);
1209
+		    free(dest);
1209 1210
 		    return CL_EMEM;
1210 1211
 		}
1211 1212
 
... ...
@@ -170,6 +170,7 @@ int pefromupx (char *src, char *dst, uint32_t *dsize, uint32_t ep, uint32_t upx0
170 170
 
171 171
   if (foffset > *dsize + 8192) {
172 172
     cli_dbgmsg("UPX: wrong raw size - giving up rebuild\n");
173
+    free(newbuf);
173 174
     return 0;
174 175
   }
175 176
   memcpy(dst, newbuf, foffset);
... ...
@@ -318,6 +318,7 @@ int wwunpack(char *exe, uint32_t exesz, uint32_t headsize, uint32_t min, uint32_
318 318
     }
319 319
     unpacked=exe+headsize+rva-min;
320 320
     if (!CLI_ISCONTAINED(exe, exesz, unpacked, csize)) {
321
+      free(packed);
321 322
       cli_dbgmsg("WWPack: packed data out of bounds, giving up.\n");
322 323
       return 1;
323 324
     }