Browse code

do not report I/O error for small files with empty section

git-svn-id: file:///var/lib/svn/clamav-devel/trunk/clamav-devel@973 77e5149b-7576-45b1-b177-96237e5ba77b

Tomasz Kojm authored on 2004/10/07 01:30:03
Showing 2 changed files
... ...
@@ -1,3 +1,8 @@
1
+Wed Oct  6 18:25:46 CEST 2004 (tk)
2
+----------------------------------
3
+  * libclamav/pe.c: do not report I/O error for small files with empty
4
+		    section
5
+
1 6
 Tue Oct  5 16:45:28 BST 2004 (njh)
2 7
 ----------------------------------
3 8
   * libclamav:		First draft of RFC1341 code. It is not enabled by
... ...
@@ -411,8 +411,9 @@ int cli_scanpe(int desc, const char **virname, long int *scanned, const struct c
411 411
 
412 412
         if(read(desc, buff, 168) != 168) {
413 413
 	    cli_dbgmsg("UPX/FSG: Can't read 168 bytes at 0x%x (%d)\n", ep, ep);
414
+	    cli_dbgmsg("UPX/FSG: Broken or not UPX/FSG compressed file\n");
414 415
             free(section_hdr);
415
-	    return CL_EIO;
416
+	    return CL_CLEAN;
416 417
 	}
417 418
 
418 419
 	if(buff[0] == '\x87' && buff[1] == '\x25') {
... ...
@@ -965,10 +966,11 @@ int cli_scanpe(int desc, const char **virname, long int *scanned, const struct c
965 965
 
966 966
 	    if(read(desc, buff, 126) != 126) { /* i.e. 0x69 + 13 + 8 */
967 967
 		cli_dbgmsg("UPX: Can't read 126 bytes at 0x%x (%d)\n", ep, ep);
968
+		cli_dbgmsg("UPX/FSG: Broken or not UPX/FSG compressed file\n");
968 969
 		free(section_hdr);
969 970
 		free(src);
970 971
 		free(dest);
971
-		return CL_EIO;
972
+		return CL_CLEAN;
972 973
 	    } else {
973 974
 		if(cli_memstr(UPX_NRV2B, 24, buff + 0x69, 13) || cli_memstr(UPX_NRV2B, 24, buff + 0x69 + 8, 13)) {
974 975
 		    cli_dbgmsg("UPX: Looks like a NRV2B decompression routine\n");