[Pkg-clamav-commits] [SCM] Debian repository for ClamAV branch, debian/unstable, updated. debian/0.95+dfsg-1-6156-g094ec9b

Tomasz Kojm tkojm at clamav.net
Sun Apr 4 00:59:14 UTC 2010


The following commit has been merged in the debian/unstable branch:
commit 0feb74bf6689017cd7de2fbf316be5a58ccc56e2
Author: Tomasz Kojm <tkojm at clamav.net>
Date:   Mon Jul 27 13:54:20 2009 +0200

    libclamav/macho.c: improve detection of Universal Binaries

diff --git a/ChangeLog b/ChangeLog
index c431a0e..f854572 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Mon Jul 27 13:53:15 CEST 2009 (tk)
+----------------------------------
+ * libclamav/macho.c: improve detection of Universal Binaries
+
 Mon Jul 27 12:28:08 CEST 2009 (tk)
 ----------------------------------
  * libclamav/macho.c: fix section alignment (bb#1667)
diff --git a/libclamav/filetypes_int.h b/libclamav/filetypes_int.h
index b38c224..ef51606 100644
--- a/libclamav/filetypes_int.h
+++ b/libclamav/filetypes_int.h
@@ -149,7 +149,7 @@ static const char *ftypes_int[] = {
   "0:0:feedface:Mach-O BE:CL_TYPE_ANY:CL_TYPE_MACHO:45",
   "0:0:feedfacf:Mach-O BE 64-bit:CL_TYPE_ANY:CL_TYPE_MACHO:45",
   "1:*:496e7374616c6c536869656c6400{292}0600000000000000{8}0000000001:ISHIELD-MSI:CL_TYPE_ANY:CL_TYPE_ISHIELD_MSI:45",
-  "0:0:cafebabe:Universal Binary:CL_TYPE_ANY:CL_TYPE_MACHO_UNIBIN:46",
+  "0:0:cafebabe:Universal Binary/Java Bytecode:CL_TYPE_ANY:CL_TYPE_MACHO_UNIBIN:46",
   NULL
 };
 
diff --git a/libclamav/macho.c b/libclamav/macho.c
index a3adbf0..76a2589 100644
--- a/libclamav/macho.c
+++ b/libclamav/macho.c
@@ -522,9 +522,12 @@ int cli_scanmacho_unibin(int fd, cli_ctx *ctx)
     }
 
     fat_header.nfats = EC32(fat_header.nfats, conv);
+    if((fat_header.nfats & 0xffff) >= 39) /* Java Bytecode */
+	return CL_CLEAN;
+
     if(fat_header.nfats > 32) {
 	cli_dbgmsg("cli_scanmacho_unibin: Invalid number of architectures\n");
-	RETURN_BROKEN;
+	return CL_EFORMAT;
     }
     cli_dbgmsg("UNIBIN: Number of architectures: %u\n", (unsigned int) fat_header.nfats);
     for(i = 0; i < fat_header.nfats; i++) {

-- 
Debian repository for ClamAV



More information about the Pkg-clamav-commits mailing list