Browse code

bb#911

git-svn: trunk@3757

aCaB authored on 2008/04/06 20:03:36
Showing 2 changed files
... ...
@@ -1,3 +1,7 @@
1
+Sun Apr  6 12:19:47 CEST 2008 (acab)
2
+------------------------------------
3
+  * libclamav/pe.c: make uspack softfail as it's really reading unaligned data
4
+
1 5
 Thu Apr  3 15:03:18 EEST 2008 (edwin)
2 6
 -------------------------------------
3 7
   * unit_tests/Makefile.am/.in: fix typo that caused 'make tags' to fail.
... ...
@@ -1255,9 +1255,8 @@ int cli_scanpe(int desc, cli_ctx *ctx)
1255 1255
 	    lseek(desc, 0, SEEK_SET);
1256 1256
 	    if(read(desc, dest, ssize) != ssize) {
1257 1257
 	        cli_dbgmsg("Upack: Can't read raw data of section 0\n");
1258
-		free(exe_sections);
1259 1258
 		free(dest);
1260
-		return CL_EIO;
1259
+		break;
1261 1260
 	    }
1262 1261
 
1263 1262
 	    if(upack) memmove(dest + exe_sections[2].rva - exe_sections[0].rva, dest, ssize);
... ...
@@ -1266,9 +1265,8 @@ int cli_scanpe(int desc, cli_ctx *ctx)
1266 1266
 
1267 1267
 	    if(read(desc, dest + exe_sections[1].rva - off, exe_sections[1].ursz) != exe_sections[1].ursz) {
1268 1268
 		cli_dbgmsg("Upack: Can't read raw data of section 1\n");
1269
-		free(exe_sections);
1270 1269
 		free(dest);
1271
-		return CL_EIO;
1270
+		break;
1272 1271
 	    }
1273 1272
 
1274 1273
 	    CLI_UNPTEMP("Upack",(dest,exe_sections,0));