From: Christos Zoulas Date: Mon, 18 Feb 2019 16:53:11 +0000 (+0000) Subject: PR/59: magicus: Add java module and image magic. X-Git-Tag: FILE5_36~10 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=264878fd9de442aec81a46bf014dd7690a90e483;p=file PR/59: magicus: Add java module and image magic. --- diff --git a/magic/Magdir/java b/magic/Magdir/java index 18e82eaf..c375856c 100644 --- a/magic/Magdir/java +++ b/magic/Magdir/java @@ -1,6 +1,6 @@ #------------------------------------------------------------ -# $File: java,v 1.19 2018/08/11 11:32:15 christos Exp $ +# $File: java,v 1.20 2019/02/18 16:53:11 christos Exp $ # Java ByteCode and Mach-O binaries (e.g., Mac OS X) use the # same magic number, 0xcafebabe, so they are both handled # in the entry called "cafebabe". @@ -25,3 +25,21 @@ >0x12 byte 0 >>0x11 ubyte-0x31 <2 Java HPROF dump, >>>0x17 beqdate/1000 x created %s + +# Java jmod module +# See https://hg.openjdk.java.net/jdk9/jdk9/jdk/file/tip/src/java.base/share/classes/jdk/internal/jmod/JmodFile.java +# Grr. 2 byte magic "JM", really? In 2019? +0 beshort 0x4a4d0100 Java jmod module version 1.0 +!:mime application/x-java-jmod + +# Java jlinked image +# See https://hg.openjdk.java.net/jdk9/jdk9/jdk/file/tip/src/java.base/share/native/libjimage/imageFile.hpp +0 belong 0xcafedada Java module image (big endian) +>4 beshort >0x00 \b, version %d +>6 beshort x \b.%d +!:mime application/x-java-image + +0 lelong 0xcafedada Java module image (little endian) +>6 leshort >0x00 \b, version %d +>4 leshort x \b.%d +!:mime application/x-java-image