| @@ -0,0 +1,110 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: commands,v 1.51 2014/09/27 00:12:55 christos Exp $ | ||
| # commands: file(1) magic for various shells and interpreters | ||
| # | ||
| #0 string/w : shell archive or script for antique kernel text | ||
| 0 string/wt #!\ /bin/sh POSIX shell script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wb #!\ /bin/sh POSIX shell script executable (binary data) | ||
| !:mime text/x-shellscript | ||
|
|
||
| 0 string/wt #!\ /bin/csh C shell script text executable | ||
| !:mime text/x-shellscript | ||
|
|
||
| # korn shell magic, sent by George Wu, gwu@clyde.att.com | ||
| 0 string/wt #!\ /bin/ksh Korn shell script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wb #!\ /bin/ksh Korn shell script executable (binary data) | ||
| !:mime text/x-shellscript | ||
|
|
||
| 0 string/wt #!\ /bin/tcsh Tenex C shell script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /usr/bin/tcsh Tenex C shell script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /usr/local/tcsh Tenex C shell script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /usr/local/bin/tcsh Tenex C shell script text executable | ||
| !:mime text/x-shellscript | ||
|
|
||
| # | ||
| # zsh/ash/ae/nawk/gawk magic from cameron@cs.unsw.oz.au (Cameron Simpson) | ||
| 0 string/wt #!\ /bin/zsh Paul Falstad's zsh script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /usr/bin/zsh Paul Falstad's zsh script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /usr/local/bin/zsh Paul Falstad's zsh script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /usr/local/bin/ash Neil Brown's ash script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /usr/local/bin/ae Neil Brown's ae script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /bin/nawk new awk script text executable | ||
| !:mime text/x-nawk | ||
| 0 string/wt #!\ /usr/bin/nawk new awk script text executable | ||
| !:mime text/x-nawk | ||
| 0 string/wt #!\ /usr/local/bin/nawk new awk script text executable | ||
| !:mime text/x-nawk | ||
| 0 string/wt #!\ /bin/gawk GNU awk script text executable | ||
| !:mime text/x-gawk | ||
| 0 string/wt #!\ /usr/bin/gawk GNU awk script text executable | ||
| !:mime text/x-gawk | ||
| 0 string/wt #!\ /usr/local/bin/gawk GNU awk script text executable | ||
| !:mime text/x-gawk | ||
| # | ||
| 0 string/wt #!\ /bin/awk awk script text executable | ||
| !:mime text/x-awk | ||
| 0 string/wt #!\ /usr/bin/awk awk script text executable | ||
| !:mime text/x-awk | ||
| 0 regex/4096 =^\\s{0,100}BEGIN\\s{0,100}[{] awk or perl script text | ||
|
|
||
| # AT&T Bell Labs' Plan 9 shell | ||
| 0 string/wt #!\ /bin/rc Plan 9 rc shell script text executable | ||
|
|
||
| # bash shell magic, from Peter Tobias (tobias@server.et-inf.fho-emden.de) | ||
| 0 string/wt #!\ /bin/bash Bourne-Again shell script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wb #!\ /bin/bash Bourne-Again shell script executable (binary data) | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /usr/bin/bash Bourne-Again shell script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wb #!\ /usr/bin/bash Bourne-Again shell script executable (binary data) | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /usr/local/bash Bourne-Again shell script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wb #!\ /usr/local/bash Bourne-Again shell script executable (binary data) | ||
| !:mime text/x-shellscript | ||
| 0 string/wt #!\ /usr/local/bin/bash Bourne-Again shell script text executable | ||
| !:mime text/x-shellscript | ||
| 0 string/wb #!\ /usr/local/bin/bash Bourne-Again shell script executable (binary data) | ||
| !:mime text/x-shellscript | ||
|
|
||
| # PHP scripts | ||
| # Ulf Harnhammar <ulfh@update.uu.se> | ||
| 0 search/1/c =<?php PHP script text | ||
| !:strength + 10 | ||
| !:mime text/x-php | ||
| 0 search/1 =<?\n PHP script text | ||
| !:mime text/x-php | ||
| 0 search/1 =<?\r PHP script text | ||
| !:mime text/x-php | ||
| 0 search/1/w #!\ /usr/local/bin/php PHP script text executable | ||
| !:strength + 10 | ||
| !:mime text/x-php | ||
| 0 search/1/w #!\ /usr/bin/php PHP script text executable | ||
| !:strength + 10 | ||
| !:mime text/x-php | ||
| # Smarty compiled template, http://www.smarty.net/ | ||
| # Elan Ruusamae <glen@delfi.ee> | ||
| 0 string =<?php\ /*\ Smarty\ version Smarty compiled template | ||
| >24 regex [0-9.]+ \b, version %s | ||
| !:mime text/x-php | ||
|
|
||
| 0 string Zend\x00 PHP script Zend Optimizer data | ||
|
|
||
| 0 string/t $! DCL command file | ||
|
|
||
| # Type: Pdmenu | ||
| # URL: http://packages.debian.org/pdmenu | ||
| # From: Edward Betts <edward@debian.org> | ||
| 0 string #!/usr/bin/pdmenu Pdmenu configuration file text |
| @@ -1,4 +1,6 @@ | ||
|
|
||
| # ---------------------------------------------------------------------------- | ||
| # $File: ctags,v 1.6 2009/09/19 16:28:08 christos Exp $ | ||
| # ctags: file (1) magic for Exuberant Ctags files | ||
| # From: Alexander Mai <mai@migdal.ikp.physik.tu-darmstadt.de> | ||
| 0 search/1 =!_TAG Exuberant Ctags tag file text |
| @@ -0,0 +1,23 @@ | ||
|
|
||
| #-------------------------------------------------------------- | ||
| # ctf: file(1) magic for CTF (Common Trace Format) trace files | ||
| # | ||
| # Specs. available here: <http://www.efficios.com/ctf> | ||
| #-------------------------------------------------------------- | ||
|
|
||
| # CTF trace data | ||
| 0 lelong 0xc1fc1fc1 Common Trace Format (CTF) trace data (LE) | ||
| 0 belong 0xc1fc1fc1 Common Trace Format (CTF) trace data (BE) | ||
|
|
||
| # CTF metadata (packetized) | ||
| 0 lelong 0x75d11d57 Common Trace Format (CTF) packetized metadata (LE) | ||
| >35 byte x \b, v%d | ||
| >36 byte x \b.%d | ||
| 0 belong 0x75d11d57 Common Trace Format (CTF) packetized metadata (BE) | ||
| >35 byte x \b, v%d | ||
| >36 byte x \b.%d | ||
|
|
||
| # CTF metadata (plain text) | ||
| 0 string /*\x20CTF\x20 Common Trace Format (CTF) plain text metadata | ||
| !:strength + 5 # this is to make sure we beat C | ||
| >&0 regex [0-9]+\.[0-9]+ \b, v%s |
| @@ -0,0 +1,8 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: cubemap,v 1.1 2012/06/06 13:03:20 christos Exp $ | ||
| # file(1) magic(5) data for cubemaps Martin Erik Werner <martinerikwerner@gmail.com> | ||
| # | ||
| 0 string ACMP Map file for the AssaultCube FPS game | ||
| 0 string CUBE Map file for cube and cube2 engine games | ||
| 0 string MAPZ) Map file for the Blood Frontier/Red Eclipse FPS games |
| @@ -0,0 +1,56 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: cups,v 1.3 2014/05/28 19:50:41 christos Exp $ | ||
| # Cups: file(1) magic for the cups raster file format | ||
| # From: Laurent Martelli <martellilaurent@gmail.com> | ||
| # http://www.cups.org/documentation.php/spec-raster.html | ||
| # | ||
|
|
||
| 0 name cups-le | ||
| >280 lelong x \b, %d | ||
| >284 lelong x \bx%d dpi | ||
| >376 lelong x \b, %dx | ||
| >380 lelong x \b%d pixels | ||
| >388 lelong x %d bits/color | ||
| >392 lelong x %d bits/pixel | ||
| >400 lelong 0 ColorOrder=Chunky | ||
| >400 lelong 1 ColorOrder=Banded | ||
| >400 lelong 2 ColorOrder=Planar | ||
| >404 lelong 0 ColorSpace=gray | ||
| >404 lelong 1 ColorSpace=RGB | ||
| >404 lelong 2 ColorSpace=RGBA | ||
| >404 lelong 3 ColorSpace=black | ||
| >404 lelong 4 ColorSpace=CMY | ||
| >404 lelong 5 ColorSpace=YMC | ||
| >404 lelong 6 ColorSpace=CMYK | ||
| >404 lelong 7 ColorSpace=YMCK | ||
| >404 lelong 8 ColorSpace=KCMY | ||
| >404 lelong 9 ColorSpace=KCMYcm | ||
| >404 lelong 10 ColorSpace=GMCK | ||
| >404 lelong 11 ColorSpace=GMCS | ||
| >404 lelong 12 ColorSpace=WHITE | ||
| >404 lelong 13 ColorSpace=GOLD | ||
| >404 lelong 14 ColorSpace=SILVER | ||
| >404 lelong 15 ColorSpace=CIE XYZ | ||
| >404 lelong 16 ColorSpace=CIE Lab | ||
| >404 lelong 17 ColorSpace=RGBW | ||
| >404 lelong 18 ColorSpace=sGray | ||
| >404 lelong 19 ColorSpace=sRGB | ||
| >404 lelong 20 ColorSpace=AdobeRGB | ||
|
|
||
| # Cups Raster image format, Big Endian | ||
| 0 string RaS | ||
| >3 string t Cups Raster version 1, Big Endian | ||
| >3 string 2 Cups Raster version 2, Big Endian | ||
| >3 string 3 Cups Raster version 3, Big Endian | ||
| !:mime application/vnd.cups-raster | ||
| >0 use ^cups-le | ||
|
|
||
|
|
||
| # Cups Raster image format, Little Endian | ||
| 1 string SaR | ||
| >0 string t Cups Raster version 1, Little Endian | ||
| >0 string 2 Cups Raster version 2, Little Endian | ||
| >0 string 3 Cups Raster version 3, Little Endian | ||
| !:mime application/vnd.cups-raster | ||
| >0 use cups-le |
| @@ -0,0 +1,40 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: diff,v 1.14 2012/09/16 23:08:54 christos Exp $ | ||
| # diff: file(1) magic for diff(1) output | ||
| # | ||
| 0 search/1 diff\ diff output text | ||
| !:mime text/x-diff | ||
| 0 search/1 ***\ diff output text | ||
| !:mime text/x-diff | ||
| 0 search/1 Only\ in\ diff output text | ||
| !:mime text/x-diff | ||
| 0 search/1 Common\ subdirectories:\ diff output text | ||
| !:mime text/x-diff | ||
|
|
||
| 0 search/1 Index: RCS/CVS diff output text | ||
| !:mime text/x-diff | ||
|
|
||
| # bsdiff: file(1) magic for bsdiff(1) output | ||
| 0 string/b BSDIFF40 bsdiff(1) patch file | ||
|
|
||
|
|
||
| # unified diff | ||
| 0 search/4096 ---\ | ||
| >&0 search/1024 \n | ||
| >>&0 search/1 +++\ | ||
| >>>&0 search/1024 \n | ||
| >>>>&0 search/1 @@ unified diff output text | ||
| !:mime text/x-diff | ||
| !:strength + 90 | ||
|
|
||
| # librsync -- the library for network deltas | ||
| # | ||
| # Copyright (C) 2001 by Martin Pool. You may do whatever you want with | ||
| # this file. | ||
| # | ||
| 0 belong 0x72730236 rdiff network-delta data | ||
|
|
||
| 0 belong 0x72730136 rdiff network-delta signature data | ||
| >4 belong x (block length=%d, | ||
| >8 belong x signature strength=%d) |
| @@ -0,0 +1,58 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: digital,v 1.11 2013/01/11 16:45:23 christos Exp $ | ||
| # Digital UNIX - Info | ||
| # | ||
| 0 string =!<arch>\n________64E Alpha archive | ||
| >22 string X -- out of date | ||
| # | ||
|
|
||
| 0 leshort 0603 | ||
| >24 leshort 0410 COFF format alpha pure | ||
| >24 leshort 0413 COFF format alpha demand paged | ||
| >>22 leshort&030000 !020000 executable | ||
| >>22 leshort&020000 !0 dynamically linked | ||
| >>16 lelong !0 not stripped | ||
| >>16 lelong 0 stripped | ||
| >>27 byte x - version %d | ||
| >>26 byte x \b.%d | ||
| >>28 byte x \b-%d | ||
| >24 leshort 0407 COFF format alpha object | ||
| >>22 leshort&030000 020000 shared library | ||
| >>27 byte x - version %d | ||
| >>26 byte x \b.%d | ||
| >>28 byte x \b-%d | ||
|
|
||
| # Basic recognition of Digital UNIX core dumps - Mike Bremford <mike@opac.bl.uk> | ||
| # | ||
| # The actual magic number is just "Core", followed by a 2-byte version | ||
| # number; however, treating any file that begins with "Core" as a Digital | ||
| # UNIX core dump file may produce too many false hits, so we include one | ||
| # byte of the version number as well; DU 5.0 appears only to be up to | ||
| # version 2. | ||
| # | ||
| 0 string Core\001 Alpha COFF format core dump (Digital UNIX) | ||
| >24 string >\0 \b, from '%s' | ||
| 0 string Core\002 Alpha COFF format core dump (Digital UNIX) | ||
| >24 string >\0 \b, from '%s' | ||
| # | ||
| # The next is incomplete, we could tell more about this format, | ||
| # but its not worth it. | ||
| 0 leshort 0x188 Alpha compressed COFF | ||
| 0 leshort 0x18f Alpha u-code object | ||
| # | ||
| # | ||
| # Some other interesting Digital formats, | ||
| 0 string \377\377\177 ddis/ddif | ||
| 0 string \377\377\174 ddis/dots archive | ||
| 0 string \377\377\176 ddis/dtif table data | ||
| 0 string \033c\033 LN03 output | ||
| 0 long 04553207 X image | ||
| # | ||
| 0 string =!<PDF>!\n profiling data file | ||
| # | ||
| # Locale data tables (MIPS and Alpha). | ||
| # | ||
| 0 short 0x0501 locale data table | ||
| >6 short 0x24 for MIPS | ||
| >6 short 0x40 for Alpha |
| @@ -0,0 +1,69 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: dolby,v 1.7 2014/01/08 22:37:23 christos Exp $ | ||
| # ATSC A/53 aka AC-3 aka Dolby Digital <ashitaka@gmx.at> | ||
| # from http://www.atsc.org/standards/a_52a.pdf | ||
| # corrections, additions, etc. are always welcome! | ||
| # | ||
| # syncword | ||
| 0 beshort 0x0b77 ATSC A/52 aka AC-3 aka Dolby Digital stream, | ||
| # Proposed audio/ac3 RFC/4184 | ||
| !:mime audio/vnd.dolby.dd-raw | ||
| # fscod | ||
| >4 byte&0xc0 = 0x00 48 kHz, | ||
| >4 byte&0xc0 = 0x40 44.1 kHz, | ||
| >4 byte&0xc0 = 0x80 32 kHz, | ||
| # is this one used for 96 kHz? | ||
| >4 byte&0xc0 = 0xc0 reserved frequency, | ||
| # | ||
| >5 byte&0x07 = 0x00 \b, complete main (CM) | ||
| >5 byte&0x07 = 0x01 \b, music and effects (ME) | ||
| >5 byte&0x07 = 0x02 \b, visually impaired (VI) | ||
| >5 byte&0x07 = 0x03 \b, hearing impaired (HI) | ||
| >5 byte&0x07 = 0x04 \b, dialogue (D) | ||
| >5 byte&0x07 = 0x05 \b, commentary (C) | ||
| >5 byte&0x07 = 0x06 \b, emergency (E) | ||
| >5 beshort&0x07e0 0x0720 \b, voiceover (VO) | ||
| >5 beshort&0x07e0 >0x0720 \b, karaoke | ||
| # acmod | ||
| >6 byte&0xe0 = 0x00 1+1 front, | ||
| >>6 byte&0x10 = 0x10 LFE on, | ||
| >6 byte&0xe0 = 0x20 1 front/0 rear, | ||
| >>6 byte&0x10 = 0x10 LFE on, | ||
| >6 byte&0xe0 = 0x40 2 front/0 rear, | ||
| # dsurmod (for stereo only) | ||
| >>6 byte&0x18 = 0x00 Dolby Surround not indicated | ||
| >>6 byte&0x18 = 0x08 not Dolby Surround encoded | ||
| >>6 byte&0x18 = 0x10 Dolby Surround encoded | ||
| >>6 byte&0x18 = 0x18 reserved Dolby Surround mode | ||
| >>6 byte&0x04 = 0x04 LFE on, | ||
| >6 byte&0xe0 = 0x60 3 front/0 rear, | ||
| >>6 byte&0x04 = 0x04 LFE on, | ||
| >6 byte&0xe0 = 0x80 2 front/1 rear, | ||
| >>6 byte&0x04 = 0x04 LFE on, | ||
| >6 byte&0xe0 = 0xa0 3 front/1 rear, | ||
| >>6 byte&0x01 = 0x01 LFE on, | ||
| >6 byte&0xe0 = 0xc0 2 front/2 rear, | ||
| >>6 byte&0x04 = 0x04 LFE on, | ||
| >6 byte&0xe0 = 0xe0 3 front/2 rear, | ||
| >>6 byte&0x01 = 0x01 LFE on, | ||
| # | ||
| >4 byte&0x3e = 0x00 \b, 32 kbit/s | ||
| >4 byte&0x3e = 0x02 \b, 40 kbit/s | ||
| >4 byte&0x3e = 0x04 \b, 48 kbit/s | ||
| >4 byte&0x3e = 0x06 \b, 56 kbit/s | ||
| >4 byte&0x3e = 0x08 \b, 64 kbit/s | ||
| >4 byte&0x3e = 0x0a \b, 80 kbit/s | ||
| >4 byte&0x3e = 0x0c \b, 96 kbit/s | ||
| >4 byte&0x3e = 0x0e \b, 112 kbit/s | ||
| >4 byte&0x3e = 0x10 \b, 128 kbit/s | ||
| >4 byte&0x3e = 0x12 \b, 160 kbit/s | ||
| >4 byte&0x3e = 0x14 \b, 192 kbit/s | ||
| >4 byte&0x3e = 0x16 \b, 224 kbit/s | ||
| >4 byte&0x3e = 0x18 \b, 256 kbit/s | ||
| >4 byte&0x3e = 0x1a \b, 320 kbit/s | ||
| >4 byte&0x3e = 0x1c \b, 384 kbit/s | ||
| >4 byte&0x3e = 0x1e \b, 448 kbit/s | ||
| >4 byte&0x3e = 0x20 \b, 512 kbit/s | ||
| >4 byte&0x3e = 0x22 \b, 576 kbit/s | ||
| >4 byte&0x3e = 0x24 \b, 640 kbit/s |
| @@ -0,0 +1,56 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: dyadic,v 1.6 2014/06/01 19:14:42 christos Exp $ | ||
| # Dyadic: file(1) magic for Dyalog APL. | ||
| # | ||
| # updated by Joerg Jenderek at Oct 2013 | ||
| # http://en.wikipedia.org/wiki/Dyalog_APL | ||
| # http://www.dyalog.com/ | ||
| # .DXV Dyalog APL External Variable | ||
| # .DIN Dyalog APL Input Table | ||
| # .DOT Dyalog APL Output Table | ||
| # .DFT Dyalog APL Format File | ||
| 0 ubeshort&0xFF60 0xaa00 | ||
| # skip biblio.dbt | ||
| >1 byte !4 | ||
| # real Dyalog APL have non zero version numbers like 7.3 or 13.4 | ||
| >>2 ubeshort >0x0000 Dyalog APL | ||
| >>>1 byte 0x00 aplcore | ||
| #>>>1 byte 0x00 incomplete workspace | ||
| # *.DCF Dyalog APL Component File | ||
| >>>1 byte 0x01 component file 32-bit non-journaled non-checksummed | ||
| #>>>1 byte 0x01 component file | ||
| >>>1 byte 0x02 external variable exclusive | ||
| #>>>1 byte 0x02 external variable | ||
| # *.DWS Dyalog APL Workspace | ||
| >>>1 byte 0x03 workspace | ||
| >>>>7 byte&0x28 0x00 32-bit | ||
| >>>>7 byte&0x28 0x20 64-bit | ||
| >>>>7 byte&0x0c 0x00 classic | ||
| >>>>7 byte&0x0c 0x04 unicode | ||
| >>>>7 byte&0x88 0x00 big-endian | ||
| >>>>7 byte&0x88 0x80 little-endian | ||
| >>>1 byte 0x06 external variable shared | ||
| # *.DSE Dyalog APL Session , *.DLF Dyalog APL Session Log File | ||
| >>>1 byte 0x07 session | ||
| >>>1 byte 0x08 mapped file 32-bit | ||
| >>>1 byte 0x09 component file 64-bit non-journaled non-checksummed | ||
| >>>1 byte 0x0a mapped file 64-bit | ||
| >>>1 byte 0x0b component file 32-bit level 1 journaled non-checksummed | ||
| >>>1 byte 0x0c component file 64-bit level 1 journaled non-checksummed | ||
| >>>1 byte 0x0d component file 32-bit level 1 journaled checksummed | ||
| >>>1 byte 0x0e component file 64-bit level 1 journaled checksummed | ||
| >>>1 byte 0x0f component file 32-bit level 2 journaled checksummed | ||
| >>>1 byte 0x10 component file 64-bit level 2 journaled checksummed | ||
| >>>1 byte 0x11 component file 32-bit level 3 journaled checksummed | ||
| >>>1 byte 0x12 component file 64-bit level 3 journaled checksummed | ||
| >>>1 byte 0x13 component file 32-bit non-journaled checksummed | ||
| >>>1 byte 0x14 component file 64-bit non-journaled checksummed | ||
| >>>1 byte 0x80 DDB | ||
| >>>2 byte x version %d | ||
| >>>3 byte x \b.%d | ||
| #>>>2 byte x type %d | ||
| #>>>3 byte x subtype %d | ||
|
|
||
| # *.DXF Dyalog APL Transfer File | ||
| 0 short 0x6060 Dyalog APL transfer |
| @@ -0,0 +1,8 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: ebml,v 1.1 2010/07/02 00:07:03 christos Exp $ | ||
| # ebml: file(1) magic for various Extensible Binary Meta Language | ||
| # http://www.matroska.org/technical/specs/index.html#track | ||
| 0 belong 0x1a45dfa3 EBML file | ||
| >4 search/b/100 \102\202 | ||
| >>&1 string x \b, creator %.8s |
| @@ -0,0 +1,325 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: elf,v 1.68 2014/09/19 19:05:57 christos Exp $ | ||
| # elf: file(1) magic for ELF executables | ||
| # | ||
| # We have to check the byte order flag to see what byte order all the | ||
| # other stuff in the header is in. | ||
| # | ||
| # What're the correct byte orders for the nCUBE and the Fujitsu VPP500? | ||
| # | ||
| # Created by: unknown | ||
| # Modified by (1): Daniel Quinlan <quinlan@yggdrasil.com> | ||
| # Modified by (2): Peter Tobias <tobias@server.et-inf.fho-emden.de> (core support) | ||
| # Modified by (3): Christian 'Dr. Disk' Hechelmann <drdisk@ds9.au.s.shuttle.de> (fix of core support) | ||
| # Modified by (4): <gerardo.cacciari@gmail.com> (VMS Itanium) | ||
| # Modified by (5): Matthias Urlichs <smurf@debian.org> (Listing of many architectures) | ||
|
|
||
| 0 name elf-le | ||
| >16 leshort 0 no file type, | ||
| !:mime application/octet-stream | ||
| >16 leshort 1 relocatable, | ||
| !:mime application/x-object | ||
| >16 leshort 2 executable, | ||
| !:mime application/x-executable | ||
| >16 leshort 3 shared object, | ||
| !:mime application/x-sharedlib | ||
| >16 leshort 4 core file | ||
| !:mime application/x-coredump | ||
| # Core file detection is not reliable. | ||
| #>>>(0x38+0xcc) string >\0 of '%s' | ||
| #>>>(0x38+0x10) lelong >0 (signal %d), | ||
| >16 leshort &0xff00 processor-specific, | ||
| >18 clear x | ||
| >18 leshort 0 no machine, | ||
| >18 leshort 1 AT&T WE32100, | ||
| >18 leshort 2 SPARC, | ||
| >18 leshort 3 Intel 80386, | ||
| >18 leshort 4 Motorola m68k, | ||
| >>4 byte 1 | ||
| >>>36 lelong &0x01000000 68000, | ||
| >>>36 lelong &0x00810000 CPU32, | ||
| >>>36 lelong 0 68020, | ||
| >18 leshort 5 Motorola m88k, | ||
| >18 leshort 6 Intel 80486, | ||
| >18 leshort 7 Intel 80860, | ||
| # The official e_machine number for MIPS is now #8, regardless of endianness. | ||
| # The second number (#10) will be deprecated later. For now, we still | ||
| # say something if #10 is encountered, but only gory details for #8. | ||
| >18 leshort 8 MIPS, | ||
| >>4 byte 1 | ||
| >>>36 lelong &0x20 N32 | ||
| >18 leshort 10 MIPS, | ||
| >>4 byte 1 | ||
| >>>36 lelong &0x20 N32 | ||
| >18 leshort 8 | ||
| # only for 32-bit | ||
| >>4 byte 1 | ||
| >>>36 lelong&0xf0000000 0x00000000 MIPS-I | ||
| >>>36 lelong&0xf0000000 0x10000000 MIPS-II | ||
| >>>36 lelong&0xf0000000 0x20000000 MIPS-III | ||
| >>>36 lelong&0xf0000000 0x30000000 MIPS-IV | ||
| >>>36 lelong&0xf0000000 0x40000000 MIPS-V | ||
| >>>36 lelong&0xf0000000 0x50000000 MIPS32 | ||
| >>>36 lelong&0xf0000000 0x60000000 MIPS64 | ||
| >>>36 lelong&0xf0000000 0x70000000 MIPS32 rel2 | ||
| >>>36 lelong&0xf0000000 0x80000000 MIPS64 rel2 | ||
| # only for 64-bit | ||
| >>4 byte 2 | ||
| >>>48 lelong&0xf0000000 0x00000000 MIPS-I | ||
| >>>48 lelong&0xf0000000 0x10000000 MIPS-II | ||
| >>>48 lelong&0xf0000000 0x20000000 MIPS-III | ||
| >>>48 lelong&0xf0000000 0x30000000 MIPS-IV | ||
| >>>48 lelong&0xf0000000 0x40000000 MIPS-V | ||
| >>>48 lelong&0xf0000000 0x50000000 MIPS32 | ||
| >>>48 lelong&0xf0000000 0x60000000 MIPS64 | ||
| >>>48 lelong&0xf0000000 0x70000000 MIPS32 rel2 | ||
| >>>48 lelong&0xf0000000 0x80000000 MIPS64 rel2 | ||
| >18 leshort 9 Amdahl, | ||
| >18 leshort 10 MIPS (deprecated), | ||
| >18 leshort 11 RS6000, | ||
| >18 leshort 15 PA-RISC, | ||
| # only for 32-bit | ||
| >>4 byte 1 | ||
| >>>38 leshort 0x0214 2.0 | ||
| >>>36 leshort &0x0008 (LP64) | ||
| # only for 64-bit | ||
| >>4 byte 2 | ||
| >>>50 leshort 0x0214 2.0 | ||
| >>>48 leshort &0x0008 (LP64) | ||
| >18 leshort 16 nCUBE, | ||
| >18 leshort 17 Fujitsu VPP500, | ||
| >18 leshort 18 SPARC32PLUS, | ||
| # only for 32-bit | ||
| >>4 byte 1 | ||
| >>>36 lelong&0xffff00 0x000100 V8+ Required, | ||
| >>>36 lelong&0xffff00 0x000200 Sun UltraSPARC1 Extensions Required, | ||
| >>>36 lelong&0xffff00 0x000400 HaL R1 Extensions Required, | ||
| >>>36 lelong&0xffff00 0x000800 Sun UltraSPARC3 Extensions Required, | ||
| >18 leshort 19 Intel 80960, | ||
| >18 leshort 20 PowerPC or cisco 4500, | ||
| >18 leshort 21 64-bit PowerPC or cisco 7500, | ||
| >18 leshort 22 IBM S/390, | ||
| >18 leshort 23 Cell SPU, | ||
| >18 leshort 24 cisco SVIP, | ||
| >18 leshort 25 cisco 7200, | ||
| >18 leshort 36 NEC V800 or cisco 12000, | ||
| >18 leshort 37 Fujitsu FR20, | ||
| >18 leshort 38 TRW RH-32, | ||
| >18 leshort 39 Motorola RCE, | ||
| >18 leshort 40 ARM, | ||
| >>4 byte 1 | ||
| >>>36 lelong&0xff000000 0x04000000 EABI4 | ||
| >>>36 lelong&0xff000000 0x05000000 EABI5 | ||
| >>>36 lelong &0x00800000 BE8 | ||
| >>>36 lelong &0x00400000 LE8 | ||
| >18 leshort 41 Alpha, | ||
| >18 leshort 42 Renesas SH, | ||
| >18 leshort 43 SPARC V9, | ||
| >>4 byte 2 | ||
| >>>48 lelong&0xffff00 0x000200 Sun UltraSPARC1 Extensions Required, | ||
| >>>48 lelong&0xffff00 0x000400 HaL R1 Extensions Required, | ||
| >>>48 lelong&0xffff00 0x000800 Sun UltraSPARC3 Extensions Required, | ||
| >>>48 lelong&0x3 0 total store ordering, | ||
| >>>48 lelong&0x3 1 partial store ordering, | ||
| >>>48 lelong&0x3 2 relaxed memory ordering, | ||
| >18 leshort 44 Siemens Tricore Embedded Processor, | ||
| >18 leshort 45 Argonaut RISC Core, Argonaut Technologies Inc., | ||
| >18 leshort 46 Renesas H8/300, | ||
| >18 leshort 47 Renesas H8/300H, | ||
| >18 leshort 48 Renesas H8S, | ||
| >18 leshort 49 Renesas H8/500, | ||
| >18 leshort 50 IA-64, | ||
| >18 leshort 51 Stanford MIPS-X, | ||
| >18 leshort 52 Motorola Coldfire, | ||
| >18 leshort 53 Motorola M68HC12, | ||
| >18 leshort 54 Fujitsu MMA, | ||
| >18 leshort 55 Siemens PCP, | ||
| >18 leshort 56 Sony nCPU, | ||
| >18 leshort 57 Denso NDR1, | ||
| >18 leshort 58 Start*Core, | ||
| >18 leshort 59 Toyota ME16, | ||
| >18 leshort 60 ST100, | ||
| >18 leshort 61 Tinyj emb., | ||
| >18 leshort 62 x86-64, | ||
| >18 leshort 63 Sony DSP, | ||
| >18 leshort 64 DEC PDP-10, | ||
| >18 leshort 65 DEC PDP-11, | ||
| >18 leshort 66 FX66, | ||
| >18 leshort 67 ST9+ 8/16 bit, | ||
| >18 leshort 68 ST7 8 bit, | ||
| >18 leshort 69 MC68HC16, | ||
| >18 leshort 70 MC68HC11, | ||
| >18 leshort 71 MC68HC08, | ||
| >18 leshort 72 MC68HC05, | ||
| >18 leshort 73 SGI SVx or Cray NV1, | ||
| >18 leshort 74 ST19 8 bit, | ||
| >18 leshort 75 Digital VAX, | ||
| >18 leshort 76 Axis cris, | ||
| >18 leshort 77 Infineon 32-bit embedded, | ||
| >18 leshort 78 Element 14 64-bit DSP, | ||
| >18 leshort 79 LSI Logic 16-bit DSP, | ||
| >18 leshort 80 MMIX, | ||
| >18 leshort 81 Harvard machine-independent, | ||
| >18 leshort 82 SiTera Prism, | ||
| >18 leshort 83 Atmel AVR 8-bit, | ||
| >18 leshort 84 Fujitsu FR30, | ||
| >18 leshort 85 Mitsubishi D10V, | ||
| >18 leshort 86 Mitsubishi D30V, | ||
| >18 leshort 87 NEC v850, | ||
| >18 leshort 88 Renesas M32R, | ||
| >18 leshort 89 Matsushita MN10300, | ||
| >18 leshort 90 Matsushita MN10200, | ||
| >18 leshort 91 picoJava, | ||
| >18 leshort 92 OpenRISC, | ||
| >18 leshort 93 ARC Cores Tangent-A5, | ||
| >18 leshort 94 Tensilica Xtensa, | ||
| >18 leshort 95 Alphamosaic VideoCore, | ||
| >18 leshort 96 Thompson Multimedia, | ||
| >18 leshort 97 NatSemi 32k, | ||
| >18 leshort 98 Tenor Network TPC, | ||
| >18 leshort 99 Trebia SNP 1000, | ||
| >18 leshort 100 STMicroelectronics ST200, | ||
| >18 leshort 101 Ubicom IP2022, | ||
| >18 leshort 102 MAX Processor, | ||
| >18 leshort 103 NatSemi CompactRISC, | ||
| >18 leshort 104 Fujitsu F2MC16, | ||
| >18 leshort 105 TI msp430, | ||
| >18 leshort 106 Analog Devices Blackfin, | ||
| >18 leshort 107 S1C33 Family of Seiko Epson, | ||
| >18 leshort 108 Sharp embedded, | ||
| >18 leshort 109 Arca RISC, | ||
| >18 leshort 110 PKU-Unity Ltd., | ||
| >18 leshort 111 eXcess: 16/32/64-bit, | ||
| >18 leshort 112 Icera Deep Execution Processor, | ||
| >18 leshort 113 Altera Nios II, | ||
| >18 leshort 114 NatSemi CRX, | ||
| >18 leshort 115 Motorola XGATE, | ||
| >18 leshort 116 Infineon C16x/XC16x, | ||
| >18 leshort 117 Renesas M16C series, | ||
| >18 leshort 118 Microchip dsPIC30F, | ||
| >18 leshort 119 Freescale RISC core, | ||
| >18 leshort 120 Renesas M32C series, | ||
| >18 leshort 131 Altium TSK3000 core, | ||
| >18 leshort 132 Freescale RS08, | ||
| >18 leshort 134 Cyan Technology eCOG2, | ||
| >18 leshort 135 Sunplus S+core7 RISC, | ||
| >18 leshort 136 New Japan Radio (NJR) 24-bit DSP, | ||
| >18 leshort 137 Broadcom VideoCore III, | ||
| >18 leshort 138 LatticeMico32, | ||
| >18 leshort 139 Seiko Epson C17 family, | ||
| >18 leshort 140 TI TMS320C6000 DSP family, | ||
| >18 leshort 141 TI TMS320C2000 DSP family, | ||
| >18 leshort 142 TI TMS320C55x DSP family, | ||
| >18 leshort 160 STMicroelectronics 64bit VLIW DSP, | ||
| >18 leshort 161 Cypress M8C, | ||
| >18 leshort 162 Renesas R32C series, | ||
| >18 leshort 163 NXP TriMedia family, | ||
| >18 leshort 164 QUALCOMM DSP6, | ||
| >18 leshort 165 Intel 8051 and variants, | ||
| >18 leshort 166 STMicroelectronics STxP7x family, | ||
| >18 leshort 167 Andes embedded RISC, | ||
| >18 leshort 168 Cyan eCOG1X family, | ||
| >18 leshort 169 Dallas MAXQ30, | ||
| >18 leshort 170 New Japan Radio (NJR) 16-bit DSP, | ||
| >18 leshort 171 M2000 Reconfigurable RISC, | ||
| >18 leshort 172 Cray NV2 vector architecture, | ||
| >18 leshort 173 Renesas RX family, | ||
| >18 leshort 174 META, | ||
| >18 leshort 175 MCST Elbrus, | ||
| >18 leshort 176 Cyan Technology eCOG16 family, | ||
| >18 leshort 177 NatSemi CompactRISC, | ||
| >18 leshort 178 Freescale Extended Time Processing Unit, | ||
| >18 leshort 179 Infineon SLE9X, | ||
| >18 leshort 180 Intel L1OM, | ||
| >18 leshort 181 Intel K1OM, | ||
| >18 leshort 183 ARM aarch64, | ||
| >18 leshort 185 Atmel 32-bit family, | ||
| >18 leshort 186 STMicroeletronics STM8 8-bit, | ||
| >18 leshort 187 Tilera TILE64, | ||
| >18 leshort 188 Tilera TILEPro, | ||
| >18 leshort 189 Xilinx MicroBlaze 32-bit RISC, | ||
| >18 leshort 190 NVIDIA CUDA architecture, | ||
| >18 leshort 191 Tilera TILE-Gx, | ||
| >18 leshort 197 Renesas RL78 family, | ||
| >18 leshort 199 Renesas 78K0R, | ||
| >18 leshort 200 Freescale 56800EX, | ||
| >18 leshort 201 Beyond BA1, | ||
| >18 leshort 202 Beyond BA2, | ||
| >18 leshort 203 XMOS xCORE, | ||
| >18 leshort 204 Microchip 8-bit PIC(r), | ||
| >18 leshort 210 KM211 KM32, | ||
| >18 leshort 211 KM211 KMX32, | ||
| >18 leshort 212 KM211 KMX16, | ||
| >18 leshort 213 KM211 KMX8, | ||
| >18 leshort 214 KM211 KVARC, | ||
| >18 leshort 215 Paneve CDP, | ||
| >18 leshort 216 Cognitive Smart Memory, | ||
| >18 leshort 217 iCelero CoolEngine, | ||
| >18 leshort 218 Nanoradio Optimized RISC, | ||
| >18 leshort 243 UCB RISC-V, | ||
| >18 leshort 0x1057 AVR (unofficial), | ||
| >18 leshort 0x1059 MSP430 (unofficial), | ||
| >18 leshort 0x1223 Adapteva Epiphany (unofficial), | ||
| >18 leshort 0x2530 Morpho MT (unofficial), | ||
| >18 leshort 0x3330 FR30 (unofficial), | ||
| >18 leshort 0x3426 OpenRISC (obsolete), | ||
| >18 leshort 0x4688 Infineon C166 (unofficial), | ||
| >18 leshort 0x5441 Cygnus FRV (unofficial), | ||
| >18 leshort 0x5aa5 DLX (unofficial), | ||
| >18 leshort 0x7650 Cygnus D10V (unofficial), | ||
| >18 leshort 0x7676 Cygnus D30V (unofficial), | ||
| >18 leshort 0x8217 Ubicom IP2xxx (unofficial), | ||
| >18 leshort 0x8472 OpenRISC (obsolete), | ||
| >18 leshort 0x9025 Cygnus PowerPC (unofficial), | ||
| >18 leshort 0x9026 Alpha (unofficial), | ||
| >18 leshort 0x9041 Cygnus M32R (unofficial), | ||
| >18 leshort 0x9080 Cygnus V850 (unofficial), | ||
| >18 leshort 0xa390 IBM S/390 (obsolete), | ||
| >18 leshort 0xabc7 Old Xtensa (unofficial), | ||
| >18 leshort 0xad45 xstormy16 (unofficial), | ||
| >18 leshort 0xbaab Old MicroBlaze (unofficial),, | ||
| >18 leshort 0xbeef Cygnus MN10300 (unofficial), | ||
| >18 leshort 0xdead Cygnus MN10200 (unofficial), | ||
| >18 leshort 0xf00d Toshiba MeP (unofficial), | ||
| >18 leshort 0xfeb0 Renesas M32C (unofficial), | ||
| >18 leshort 0xfeba Vitesse IQ2000 (unofficial), | ||
| >18 leshort 0xfebb NIOS (unofficial), | ||
| >18 leshort 0xfeed Moxie (unofficial), | ||
| >18 default x | ||
| >>18 leshort x *unknown arch 0x%x* | ||
| >20 lelong 0 invalid version | ||
| >20 lelong 1 version 1 | ||
|
|
||
| 0 string \177ELF ELF | ||
| !:strength *2 | ||
| >4 byte 0 invalid class | ||
| >4 byte 1 32-bit | ||
| >4 byte 2 64-bit | ||
| >5 byte 0 invalid byte order | ||
| >5 byte 1 LSB | ||
| >>0 use elf-le | ||
| >5 byte 2 MSB | ||
| >>0 use \^elf-le | ||
| # Up to now only 0, 1 and 2 are defined; I've seen a file with 0x83, it seemed | ||
| # like proper ELF, but extracting the string had bad results. | ||
| >4 byte <0x80 | ||
| >>8 string >\0 (%s) | ||
| >8 string \0 | ||
| >>7 byte 0 (SYSV) | ||
| >>7 byte 1 (HP-UX) | ||
| >>7 byte 2 (NetBSD) | ||
| >>7 byte 3 (GNU/Linux) | ||
| >>7 byte 4 (GNU/Hurd) | ||
| >>7 byte 5 (86Open) | ||
| >>7 byte 6 (Solaris) | ||
| >>7 byte 7 (Monterey) | ||
| >>7 byte 8 (IRIX) | ||
| >>7 byte 9 (FreeBSD) | ||
| >>7 byte 10 (Tru64) | ||
| >>7 byte 11 (Novell Modesto) | ||
| >>7 byte 12 (OpenBSD) | ||
| >8 string \2 | ||
| >>7 byte 13 (OpenVMS) | ||
| >>7 byte 97 (ARM) | ||
| >>7 byte 255 (embedded) |
| @@ -0,0 +1,40 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: flash,v 1.11 2014/05/02 00:26:49 christos Exp $ | ||
| # flash: file(1) magic for Macromedia Flash file format | ||
| # | ||
| # See | ||
| # | ||
| # http://www.macromedia.com/software/flash/open/ | ||
| # http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/\ | ||
| # en/devnet/swf/pdf/swf-file-format-spec.pdf page 27 | ||
| # | ||
|
|
||
| 0 name swf-details | ||
| >0 string F Macromedia Flash data | ||
| !:mime application/x-shockwave-flash | ||
| >0 string C Macromedia Flash data (compressed) | ||
| !:mime application/x-shockwave-flash | ||
| >0 string Z Macromedia Flash data (lzma compressed) | ||
| !:mime application/x-shockwave-flash | ||
| >3 byte x \b, version %d | ||
|
|
||
| 1 string WS | ||
| >4 lelong !0 | ||
| >>3 byte 255 Suspicious | ||
| >>>0 use swf-details | ||
|
|
||
| >>3 ubyte <32 | ||
| >>>3 ubyte !0 | ||
| >>>>0 use swf-details | ||
|
|
||
| # From: Cal Peake <cp@absolutedigital.net> | ||
| 0 string FLV\x01 Macromedia Flash Video | ||
| !:mime video/x-flv | ||
|
|
||
| # | ||
| # Yosu Gomez | ||
| 0 string AGD2\xbe\xb8\xbb\xcd\x00 Macromedia Freehand 7 Document | ||
| 0 string AGD3\xbe\xb8\xbb\xcc\x00 Macromedia Freehand 8 Document | ||
| # From Dave Wilson | ||
| 0 string AGD4\xbe\xb8\xbb\xcb\x00 Macromedia Freehand 9 Document |
| @@ -0,0 +1,7 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: fortran,v 1.8 2014/06/03 19:01:34 christos Exp $ | ||
| # FORTRAN source | ||
| 0 regex/100l \^[Cc][\ \t] FORTRAN program | ||
| !:mime text/x-fortran | ||
| !:strength - 5 |
| @@ -0,0 +1,12 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: fusecompress,v 1.2 2011/08/08 09:05:55 christos Exp $ | ||
| # fusecompress: file(1) magic for fusecompress | ||
| 0 string \037\135\211 FuseCompress(ed) data | ||
| >3 byte 0x00 (none format) | ||
| >3 byte 0x01 (bz2 format) | ||
| >3 byte 0x02 (gz format) | ||
| >3 byte 0x03 (lzo format) | ||
| >3 byte 0x04 (xor format) | ||
| >3 byte >0x04 (unknown format) | ||
| >4 long x uncompressed size: %d |
| @@ -0,0 +1,117 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: geo,v 1.3 2013/01/04 00:47:02 christos Exp $ | ||
| # Geo- files from Kurt Schwehr <schwehr@ccom.unh.edu> | ||
|
|
||
| ###################################################################### | ||
| # | ||
| # Acoustic Doppler Current Profilers (ADCP) | ||
| # | ||
| ###################################################################### | ||
|
|
||
| 0 beshort 0x7f7f RDI Acoustic Doppler Current Profiler (ADCP) | ||
|
|
||
| ###################################################################### | ||
| # | ||
| # Metadata | ||
| # | ||
| ###################################################################### | ||
|
|
||
| 0 string Identification_Information FGDC ASCII metadata | ||
|
|
||
| ###################################################################### | ||
| # | ||
| # Seimsic / Subbottom | ||
| # | ||
| ###################################################################### | ||
|
|
||
| # Knudsen subbottom chirp profiler - Binary File Format: B9 | ||
| # KEB D409-03167 V1.75 Huffman | ||
| 0 string KEB\ Knudsen seismic KEL binary (KEB) - | ||
| >4 regex [-A-Z0-9]* Software: %s | ||
| >>&1 regex V[0-9]*\.[0-9]* version %s | ||
|
|
||
| ###################################################################### | ||
| # | ||
| # LIDAR - Laser altimetry or bathy | ||
| # | ||
| ###################################################################### | ||
|
|
||
|
|
||
| # Caris LIDAR format for LADS comes as two parts... ascii location file and binary waveform data | ||
| 0 string HCA LADS Caris Ascii Format (CAF) bathymetric lidar | ||
| >4 regex [0-9]*\.[0-9]* version %s | ||
|
|
||
| 0 string HCB LADS Caris Binary Format (CBF) bathymetric lidar waveform data | ||
| >3 byte x version %d . | ||
| >4 byte x %d | ||
|
|
||
|
|
||
| ###################################################################### | ||
| # | ||
| # MULTIBEAM SONARS http://www.ldeo.columbia.edu/res/pi/MB-System/formatdoc/ | ||
| # | ||
| ###################################################################### | ||
|
|
||
| # GeoAcoustics - GeoSwath Plus | ||
| 4 beshort 0x2002 GeoSwath RDF | ||
| 0 string Start:- GeoSwatch auf text file | ||
|
|
||
| # Seabeam 2100 | ||
| # mbsystem code mb41 | ||
| 0 string SB2100 SeaBeam 2100 multibeam sonar | ||
| 0 string SB2100DR SeaBeam 2100 DR multibeam sonar | ||
| 0 string SB2100PR SeaBeam 2100 PR multibeam sonar | ||
|
|
||
| # This corresponds to MB-System format 94, L-3/ELAC/SeaBeam XSE vendor | ||
| # format. It is the format of our upgraded SeaBeam 2112 on R/V KNORR. | ||
| 0 string $HSF XSE multibeam | ||
|
|
||
| # mb121 http://www.saic.com/maritime/gsf/ | ||
| 8 string GSF-v SAIC generic sensor format (GSF) sonar data, | ||
| >&0 regex [0-9]*\.[0-9]* version %s | ||
|
|
||
| # MGD77 - http://www.ngdc.noaa.gov/mgg/dat/geodas/docs/mgd77.htm | ||
| # mb161 | ||
| 9 string MGD77 MGD77 Header, Marine Geophysical Data Exchange Format | ||
|
|
||
| # MBSystem processing caches the mbinfo output | ||
| 1 string Swath\ Data\ File: mbsystem info cache | ||
|
|
||
| # Caris John Hughes Clark format | ||
| 0 string HDCS Caris multibeam sonar related data | ||
| 1 string Start/Stop\ parameter\ header: Caris ASCII project summary | ||
|
|
||
| ###################################################################### | ||
| # | ||
| # Visualization and 3D modeling | ||
| # | ||
| ###################################################################### | ||
|
|
||
| # IVS - IVS3d.com Tagged Data Represetation | ||
| 0 string %%\ TDR\ 2.0 IVS Fledermaus TDR file | ||
|
|
||
| # http://www.ecma-international.org/publications/standards/Ecma-363.htm | ||
| # 3D in PDFs | ||
| 0 string U3D ECMA-363, Universal 3D | ||
|
|
||
| ###################################################################### | ||
| # | ||
| # Support files | ||
| # | ||
| ###################################################################### | ||
|
|
||
| # https://midas.psi.ch/elog/ | ||
| 0 string $@MID@$ elog journal entry | ||
|
|
||
| # Geospatial Designs http://www.geospatialdesigns.com/surfer6_format.htm | ||
| 0 string DSBB Surfer 6 binary grid file | ||
| >4 leshort x \b, %d | ||
| >6 leshort x \bx%d | ||
| >8 ledouble x \b, minx=%g | ||
| >16 ledouble x \b, maxx=%g | ||
| >24 ledouble x \b, miny=%g | ||
| >32 ledouble x \b, maxy=%g | ||
| >40 ledouble x \b, minz=%g | ||
| >48 ledouble x \b, maxz=%g | ||
|
|
| @@ -0,0 +1,59 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: gnome,v 1.5 2014/04/30 21:41:02 christos Exp $ | ||
| # GNOME related files | ||
|
|
||
| # Contributed by Josh Triplett | ||
| # FIXME: Could be simplified if pstring supported two-byte counts | ||
| 0 string GnomeKeyring\n\r\0\n GNOME keyring | ||
| >&0 ubyte 0 \b, major version 0 | ||
| >>&0 ubyte 0 \b, minor version 0 | ||
| >>>&0 ubyte 0 \b, crypto type 0 (AES) | ||
| >>>&0 ubyte >0 \b, crypto type %u (unknown) | ||
| >>>&1 ubyte 0 \b, hash type 0 (MD5) | ||
| >>>&1 ubyte >0 \b, hash type %u (unknown) | ||
| >>>&2 ubelong 0xFFFFFFFF \b, name NULL | ||
| >>>&2 ubelong !0xFFFFFFFF | ||
| >>>>&-4 ubelong >255 \b, name too long for file's pstring type | ||
| >>>>&-4 ubelong <256 | ||
| >>>>>&-1 pstring x \b, name "%s" | ||
| >>>>>>&0 ubeqdate x \b, last modified %s | ||
| >>>>>>&8 ubeqdate x \b, created %s | ||
| >>>>>>&16 ubelong &1 | ||
| >>>>>>>&0 ubelong x \b, locked if idle for %u seconds | ||
| >>>>>>&16 ubelong ^1 \b, not locked if idle | ||
| >>>>>>&24 ubelong x \b, hash iterations %u | ||
| >>>>>>&28 ubequad x \b, salt %llu | ||
| >>>>>>&52 ubelong x \b, %u item(s) | ||
|
|
||
| # From: Alex Beregszaszi <alex@fsn.hu> | ||
| 4 string gtktalog GNOME Catalogue (gtktalog) | ||
| >13 string >\0 version %s | ||
|
|
||
| # Summary: GStreamer binary registry | ||
| # Extension: .bin | ||
| # Submitted by: Josh Triplett <josh@joshtriplett.org> | ||
| 0 belong 0xc0def00d GStreamer binary registry | ||
| >4 string x \b, version %s | ||
|
|
||
| # GVariant Database file | ||
| # By Elan Ruusamae <glen@delfi.ee> | ||
| # https://github.com/GNOME/gvdb/blob/master/gvdb-format.h | ||
| # It's always "GVariant", it's byte swapped on incompatible archs | ||
| # See https://github.com/GNOME/gvdb/blob/master/gvdb-builder.c | ||
| # file_builder_serialise() | ||
| # http://developer.gnome.org/glib/2.34/glib-GVariant.html#GVariant | ||
| 0 string GVariant GVariant Database file, | ||
| # version is never filled. probably future extension | ||
| >8 lelong x version %d | ||
| # not sure are these usable, so commented out | ||
| #>>16 lelong x start %d, | ||
| #>>>20 lelong x end %d | ||
|
|
||
| # G-IR database made by gobject-introspect toolset, | ||
| # http://live.gnome.org/GObjectIntrospection | ||
| 0 string GOBJ\nMETADATA\r\n\032 G-IR binary database | ||
| >16 byte x \b, v%d | ||
| >17 byte x \b.%d | ||
| >20 leshort x \b, %d entries | ||
| >22 leshort x \b/%d local |
| @@ -0,0 +1,83 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: gnu,v 1.15 2014/02/06 14:21:02 christos Exp $ | ||
| # gnu: file(1) magic for various GNU tools | ||
| # | ||
| # GNU nlsutils message catalog file format | ||
| # | ||
| # GNU message catalog (.mo and .gmo files) | ||
|
|
||
| 0 string \336\22\4\225 GNU message catalog (little endian), | ||
| >6 leshort x revision %d. | ||
| >4 leshort >0 \b%d, | ||
| >>8 lelong x %d messages, | ||
| >>36 lelong x %d sysdep messages | ||
| >4 leshort =0 \b%d, | ||
| >>8 lelong x %d messages | ||
|
|
||
| 0 string \225\4\22\336 GNU message catalog (big endian), | ||
| >4 beshort x revision %d. | ||
| >6 beshort >0 \b%d, | ||
| >>8 belong x %d messages, | ||
| >>36 belong x %d sysdep messages | ||
| >6 beshort =0 \b%d, | ||
| >>8 belong x %d messages | ||
|
|
||
|
|
||
| # GnuPG | ||
| # The format is very similar to pgp | ||
| 0 string \001gpg GPG key trust database | ||
| >4 byte x version %d | ||
| # Note: magic.mime had 0x8501 for the next line instead of 0x8502 | ||
| 0 beshort 0x8502 GPG encrypted data | ||
| !:mime text/PGP # encoding: data | ||
|
|
||
| # This magic is not particularly good, as the keyrings don't have true | ||
| # magic. Nevertheless, it covers many keyrings. | ||
| 0 beshort 0x9901 GPG key public ring | ||
| !:mime application/x-gnupg-keyring | ||
|
|
||
| # Symmetric encryption | ||
| 0 leshort 0x0d8c | ||
| >4 leshort 0x0203 | ||
| >>2 leshort 0x0204 GPG symmetrically encrypted data (3DES cipher) | ||
| >>2 leshort 0x0304 GPG symmetrically encrypted data (CAST5 cipher) | ||
| >>2 leshort 0x0404 GPG symmetrically encrypted data (BLOWFISH cipher) | ||
| >>2 leshort 0x0704 GPG symmetrically encrypted data (AES cipher) | ||
| >>2 leshort 0x0804 GPG symmetrically encrypted data (AES192 cipher) | ||
| >>2 leshort 0x0904 GPG symmetrically encrypted data (AES256 cipher) | ||
| >>2 leshort 0x0a04 GPG symmetrically encrypted data (TWOFISH cipher) | ||
| >>2 leshort 0x0b04 GPG symmetrically encrypted data (CAMELLIA128 cipher) | ||
| >>2 leshort 0x0c04 GPG symmetrically encrypted data (CAMELLIA192 cipher) | ||
| >>2 leshort 0x0d04 GPG symmetrically encrypted data (CAMELLIA256 cipher) | ||
|
|
||
|
|
||
| # GnuPG Keybox file | ||
| # <http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=blob;f=kbx/keybox-blob.c;hb=HEAD> | ||
| # From: Philipp Hahn <hahn@univention.de> | ||
| 0 belong 32 | ||
| >4 byte 1 | ||
| >>8 string KBXf GPG keybox database | ||
| >>>5 byte 1 version %d | ||
| >>>16 bedate x \b, created-at %s | ||
| >>>20 bedate x \b, last-maintained %s | ||
|
|
||
|
|
||
| # Gnumeric spreadsheet | ||
| # This entry is only semi-helpful, as Gnumeric compresses its files, so | ||
| # they will ordinarily reported as "compressed", but at least -z helps | ||
| 39 string =<gmr:Workbook Gnumeric spreadsheet | ||
|
|
||
| # From: James Youngman <jay@gnu.org> | ||
| # gnu find magic | ||
| 0 string \0LOCATE GNU findutils locate database data | ||
| >7 string >\0 \b, format %s | ||
| >7 string 02 \b (frcode) | ||
|
|
||
| # Files produced by GNU gettext | ||
| 0 long 0xDE120495 GNU-format message catalog data | ||
| 0 long 0x950412DE GNU-format message catalog data | ||
|
|
||
| # gettext message catalogue | ||
| 0 regex \^msgid\ GNU gettext message catalogue text | ||
| !:mime text/x-po |
| @@ -0,0 +1,240 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: gpt,v 1.3 2014/04/30 21:41:02 christos Exp $ | ||
| # | ||
| # GPT Partition table patterns. | ||
| # Author: Rogier Goossens (goossens.rogier@gmail.com) | ||
| # Note that a GPT-formatted disk must contain an MBR as well. | ||
| # | ||
|
|
||
| # The initial segment (up to >>>>>>>>422) was copied from the X86 | ||
| # partition table code (aka MBR). | ||
| # This is kept separate, so that MBR partitions are not reported as well. | ||
| # (use -k if you do want them as well) | ||
|
|
||
| # First, detect the MBR partiton table | ||
| # If more than one GPT protective MBR partition exists, don't print anything | ||
| # (the other MBR detection code will then just print the MBR partition table) | ||
| 0x1FE leshort 0xAA55 | ||
| >3 string !MS | ||
| >>3 string !SYSLINUX | ||
| >>>3 string !MTOOL | ||
| >>>>3 string !NEWLDR | ||
| >>>>>5 string !DOS | ||
| # not FAT (32 bit) | ||
| >>>>>>82 string !FAT32 | ||
| #not Linux kernel | ||
| >>>>>>>514 string !HdrS | ||
| #not BeOS | ||
| >>>>>>>>422 string !Be\ Boot\ Loader | ||
| # GPT with protective MBR entry in partition 1 (only) | ||
| >>>>>>>>>450 ubyte 0xee | ||
| >>>>>>>>>>466 ubyte !0xee | ||
| >>>>>>>>>>>482 ubyte !0xee | ||
| >>>>>>>>>>>>498 ubyte !0xee | ||
| #>>>>>>>>>>>>>446 use gpt-mbr-partition | ||
| >>>>>>>>>>>>>(454.l*8192) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>0 ubyte x of 8192 bytes | ||
| >>>>>>>>>>>>>(454.l*8192) string !EFI\ PART | ||
| >>>>>>>>>>>>>>(454.l*4096) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>0 ubyte x of 4096 bytes | ||
| >>>>>>>>>>>>>>(454.l*4096) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>(454.l*2048) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>0 ubyte x of 2048 bytes | ||
| >>>>>>>>>>>>>>>(454.l*2048) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>>(454.l*1024) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>>0 ubyte x of 1024 bytes | ||
| >>>>>>>>>>>>>>>>(454.l*1024) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>>>(454.l*512) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>>>0 ubyte x of 512 bytes | ||
| # GPT with protective MBR entry in partition 2 (only) | ||
| >>>>>>>>>450 ubyte !0xee | ||
| >>>>>>>>>>466 ubyte 0xee | ||
| >>>>>>>>>>>482 ubyte !0xee | ||
| >>>>>>>>>>>>498 ubyte !0xee | ||
| #>>>>>>>>>>>>>462 use gpt-mbr-partition | ||
| >>>>>>>>>>>>>(470.l*8192) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>0 ubyte x of 8192 bytes | ||
| >>>>>>>>>>>>>(470.l*8192) string !EFI\ PART | ||
| >>>>>>>>>>>>>>(470.l*4096) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>0 ubyte x of 4096 bytes | ||
| >>>>>>>>>>>>>>(470.l*4096) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>(470.l*2048) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>0 ubyte x of 2048 bytes | ||
| >>>>>>>>>>>>>>>(470.l*2048) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>>(470.l*1024) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>>0 ubyte x of 1024 bytes | ||
| >>>>>>>>>>>>>>>>(470.l*1024) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>>>(470.l*512) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>>>0 ubyte x of 512 bytes | ||
| # GPT with protective MBR entry in partition 3 (only) | ||
| >>>>>>>>>450 ubyte !0xee | ||
| >>>>>>>>>>466 ubyte !0xee | ||
| >>>>>>>>>>>482 ubyte 0xee | ||
| >>>>>>>>>>>>498 ubyte !0xee | ||
| #>>>>>>>>>>>>>478 use gpt-mbr-partition | ||
| >>>>>>>>>>>>>(486.l*8192) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>0 ubyte x of 8192 bytes | ||
| >>>>>>>>>>>>>(486.l*8192) string !EFI\ PART | ||
| >>>>>>>>>>>>>>(486.l*4096) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>0 ubyte x of 4096 bytes | ||
| >>>>>>>>>>>>>>(486.l*4096) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>(486.l*2048) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>0 ubyte x of 2048 bytes | ||
| >>>>>>>>>>>>>>>(486.l*2048) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>>(486.l*1024) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>>0 ubyte x of 1024 bytes | ||
| >>>>>>>>>>>>>>>>(486.l*1024) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>>>(486.l*512) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>>>0 ubyte x of 512 bytes | ||
| # GPT with protective MBR entry in partition 4 (only) | ||
| >>>>>>>>>450 ubyte !0xee | ||
| >>>>>>>>>>466 ubyte !0xee | ||
| >>>>>>>>>>>482 ubyte !0xee | ||
| >>>>>>>>>>>>498 ubyte 0xee | ||
| #>>>>>>>>>>>>>494 use gpt-mbr-partition | ||
| >>>>>>>>>>>>>(502.l*8192) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>0 ubyte x of 8192 bytes | ||
| >>>>>>>>>>>>>(502.l*8192) string !EFI\ PART | ||
| >>>>>>>>>>>>>>(502.l*4096) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>0 ubyte x of 4096 bytes | ||
| >>>>>>>>>>>>>>(502.l*4096) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>(502.l*2048) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>0 ubyte x of 2048 bytes | ||
| >>>>>>>>>>>>>>>(502.l*2048) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>>(502.l*1024) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>>0 ubyte x of 1024 bytes | ||
| >>>>>>>>>>>>>>>>(502.l*1024) string !EFI\ PART | ||
| >>>>>>>>>>>>>>>>>(502.l*512) string EFI\ PART GPT partition table | ||
| >>>>>>>>>>>>>>>>>>0 use gpt-mbr-type | ||
| >>>>>>>>>>>>>>>>>>&-8 use gpt-table | ||
| >>>>>>>>>>>>>>>>>>0 ubyte x of 512 bytes | ||
|
|
||
| # The following code does GPT detection and processing, including | ||
| # sector size detection. | ||
| # It has to be duplicated above because the top-level pattern | ||
| # (i.e. not called using 'use') must print *something* for file | ||
| # to count it as a match. Text only printed in named patterns is | ||
| # not counted, and causes file to continue, and try and match | ||
| # other patterns. | ||
| # | ||
| # Unfortunately, when assuming sector sizes >=16k, if the sector size | ||
| # happens to be 512 instead, we may find confusing data after the GPT | ||
| # table... If the GPT table has less than 128 entries, this may even | ||
| # happen for assumed sector sizes as small as 4k | ||
| # This could be solved by checking for the presence of the backup GPT | ||
| # header as well, but that makes the logic extremely complex | ||
| ##0 name gpt-mbr-partition | ||
| ##>(8.l*8192) string EFI\ PART | ||
| ##>>(8.l*8192) use gpt-mbr-type | ||
| ##>>&-8 use gpt-table | ||
| ##>>0 ubyte x of 8192 bytes | ||
| ##>(8.l*8192) string !EFI\ PART | ||
| ##>>(8.l*4096) string EFI\ PART GPT partition table | ||
| ##>>>0 use gpt-mbr-type | ||
| ##>>>&-8 use gpt-table | ||
| ##>>>0 ubyte x of 4096 bytes | ||
| ##>>(8.l*4096) string !EFI\ PART | ||
| ##>>>(8.l*2048) string EFI\ PART GPT partition table | ||
| ##>>>>0 use gpt-mbr-type | ||
| ##>>>>&-8 use gpt-table | ||
| ##>>>>0 ubyte x of 2048 bytes | ||
| ##>>>(8.l*2048) string !EFI\ PART | ||
| ##>>>>(8.l*1024) string EFI\ PART GPT partition table | ||
| ##>>>>>0 use gpt-mbr-type | ||
| ##>>>>>&-8 use gpt-table | ||
| ##>>>>>0 ubyte x of 1024 bytes | ||
| ##>>>>(8.l*1024) string !EFI\ PART | ||
| ##>>>>>(8.l*512) string EFI\ PART GPT partition table | ||
| ##>>>>>>0 use gpt-mbr-type | ||
| ##>>>>>>&-8 use gpt-table | ||
| ##>>>>>>0 ubyte x of 512 bytes | ||
|
|
||
| # Print details of MBR type for a GPT-disk | ||
| # Calling code ensures that there is only one 0xee partition. | ||
| 0 name gpt-mbr-type | ||
| # GPT with protective MBR entry in partition 1 | ||
| >450 ubyte 0xee | ||
| >>454 ulelong 1 | ||
| >>>462 string !\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \b (with hybrid MBR) | ||
| >>454 ulelong !1 \b (nonstandard: not at LBA 1) | ||
| # GPT with protective MBR entry in partition 2 | ||
| >466 ubyte 0xee | ||
| >>470 ulelong 1 | ||
| >>>478 string \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 | ||
| >>>>446 string !\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \b (with hybrid MBR) | ||
| >>>478 string !\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \b (with hybrid MBR) | ||
| >>470 ulelong !1 \b (nonstandard: not at LBA 1) | ||
| # GPT with protective MBR entry in partition 3 | ||
| >482 ubyte 0xee | ||
| >>486 ulelong 1 | ||
| >>>494 string \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 | ||
| >>>>446 string !\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \b (with hybrid MBR) | ||
| >>>494 string !\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \b (with hybrid MBR) | ||
| >>486 ulelong !1 \b (nonstandard: not at LBA 1) | ||
| # GPT with protective MBR entry in partition 4 | ||
| >498 ubyte 0xee | ||
| >>502 ulelong 1 | ||
| >>>446 string !\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \b (with hybrid MBR) | ||
| >>502 ulelong !1 \b (nonstandard: not at LBA 1) | ||
|
|
||
| # Print the information from a GPT partition table structure | ||
| 0 name gpt-table | ||
| >10 uleshort x \b, version %u | ||
| >8 uleshort x \b.%u | ||
| >56 ulelong x \b, GUID: %08x | ||
| >60 uleshort x \b-%04x | ||
| >62 uleshort x \b-%04x | ||
| >64 ubeshort x \b-%04x | ||
| >66 ubeshort x \b-%04x | ||
| >68 ubelong x \b%08x | ||
| #>80 uleshort x \b, %d partition entries | ||
| >32 ulequad+1 x \b, disk size: %lld sectors | ||
|
|
||
| # In case a GPT data-structure is at LBA 0, report it as well | ||
| # This covers systems which are not GPT-aware, and which show | ||
| # and allow access to the protective partition. This code will | ||
| # detect the contents of such a partition. | ||
| 0 string EFI\ PART GPT data structure (nonstandard: at LBA 0) | ||
| >0 use gpt-table | ||
| >0 ubyte x (sector size unknown) | ||
|
|
||
|
|
| @@ -1,10 +1,12 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: graphviz,v 1.8 2014/06/03 19:01:34 christos Exp $ | ||
| # graphviz: file(1) magic for http://www.graphviz.org/ | ||
|
|
||
| # FIXME: These patterns match too generally. For example, the first | ||
| # line matches a LaTeX file containing the word "graph" (with a { | ||
| # following later) and the second line matches this file. | ||
| #0 regex/100l [\r\n\t\ ]*graph[\r\n\t\ ]+.*\\{ graphviz graph text | ||
| #!:mime text/vnd.graphviz | ||
| #0 regex/100l [\r\n\t\ ]*digraph[\r\n\t\ ]+.*\\{ graphviz digraph text | ||
| #!:mime text/vnd.graphviz |
| @@ -0,0 +1,13 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: guile,v 1.1 2011/12/16 17:44:33 christos Exp $ | ||
| # Guile file magic from <dalepsmith@gmail.com> | ||
| # http://www.gnu.org/s/guile/ | ||
| # http://git.savannah.gnu.org/gitweb/?p=guile.git;f=libguile/_scm.h;hb=HEAD#l250 | ||
|
|
||
| 0 string GOOF---- Guile Object | ||
| >8 string LE \b, little endian | ||
| >8 string BE \b, big endian | ||
| >11 string 4 \b, 32bit | ||
| >11 string 8 \b, 64bit | ||
| >13 regex .\.. \b, bytecode v%s |
| @@ -0,0 +1,51 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: icc,v 1.1 2013/01/08 01:43:18 christos Exp $ | ||
| # icc: file(1) magic for International Color Consortium file formats | ||
|
|
||
| # | ||
| # Color profiles as per the ICC's "Image technology colour management - | ||
| # Architecture, profile format, and data structure" specification. | ||
| # See | ||
| # | ||
| # http://www.color.org/specification/ICC1v43_2010-12.pdf | ||
| # | ||
| # for Specification ICC.1:2010 (Profile version 4.3.0.0). | ||
| # | ||
| # Bytes 36 to 39 contain a generic profile file signature of "acsp"; | ||
| # bytes 40 to 43 "may be used to identify the primary platform/operating | ||
| # system framework for which the profile was created". | ||
| # | ||
| # There are other fields that might be worth dumping as well. | ||
| # | ||
|
|
||
| # This appears to be what's used for Apple ColorSync profiles. | ||
| # Instead of adding that, Apple just changed the generic "acsp" entry | ||
| # to be for "ColorSync ICC Color Profile" rather than "Kodak Color | ||
| # Management System, ICC Profile". | ||
| # Yes, it's "APPL", not "AAPL"; see the spec. | ||
| 36 string acspAPPL ColorSync ICC Profile | ||
| !:mime application/vnd.iccprofile | ||
|
|
||
| # Microsoft ICM color profile | ||
| 36 string acspMSFT Microsoft ICM Color Profile | ||
| !:mime application/vnd.iccprofile | ||
|
|
||
| # Yes, that's a blank after "SGI". | ||
| 36 string acspSGI\ SGI ICC Profile | ||
| !:mime application/vnd.iccprofile | ||
|
|
||
| # XXX - is this what's used for the Sun KCMS or not? The standard file | ||
| # uses just "acsp" for that, but Apple's file uses it for "ColorSync", | ||
| # and there *is* an identified "primary platform" value of SUNW. | ||
| 36 string acspSUNW Sun KCMS ICC Profile | ||
| !:mime application/vnd.iccprofile | ||
|
|
||
| # Any other profile. | ||
| # XXX - should we use "acsp\0\0\0\0" for "no primary platform" profiles, | ||
| # and use "acsp" for everything else and dump the "primary platform" | ||
| # string in those cases? | ||
| 36 string acsp ICC Profile | ||
| !:mime application/vnd.iccprofile | ||
|
|
||
|
|
| @@ -1,8 +1,9 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: inform,v 1.5 2009/09/19 16:28:09 christos Exp $ | ||
| # inform: file(1) magic for Inform interactive fiction language | ||
|
|
||
| # URL: http://www.inform-fiction.org/ | ||
| # From: Reuben Thomas <rrt@sc3d.org> | ||
|
|
||
| 0 search/100/cW constant\ story Inform source text |
| @@ -0,0 +1,15 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: isz,v 1.3 2014/04/30 21:41:02 christos Exp $ | ||
| # ISO Zipped file format | ||
| # http://www.ezbsystems.com/isz/iszspec.txt | ||
| 0 string IsZ! ISO Zipped file | ||
| >4 byte x \b, header size %u | ||
| >5 byte x \b, version %u | ||
| >8 lelong x \b, serial %u | ||
| #12 leshort x \b, sector size %u | ||
| #>16 lelong x \b, total sectors %u | ||
| >17 byte >0 \b, password protected | ||
| #>24 lequad x \b, segment size %llu | ||
| #>32 lelong x \b, blocks %u | ||
| #>36 lelong x \b, block size %u |
| @@ -0,0 +1,17 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: javascript,v 1.1 2012/06/16 13:30:36 christos Exp $ | ||
| # javascript: magic for javascript and node.js scripts. | ||
| # | ||
| 0 search/1/w #!/bin/node Node.js script text executable | ||
| !:mime application/javascript | ||
| 0 search/1/w #!/usr/bin/node Node.js script text executable | ||
| !:mime application/javascript | ||
| 0 search/1/w #!/bin/nodejs Node.js script text executable | ||
| !:mime application/javascript | ||
| 0 search/1/w #!/usr/bin/nodejs Node.js script text executable | ||
| !:mime application/javascript | ||
| 0 search/1 #!/usr/bin/env\ node Node.js script text executable | ||
| !:mime application/javascript | ||
| 0 search/1 #!/usr/bin/env\ nodejs Node.js script text executable | ||
| !:mime application/javascript |
| @@ -0,0 +1,115 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: jpeg,v 1.25 2015/01/02 16:56:50 christos Exp $ | ||
| # JPEG images | ||
| # SunOS 5.5.1 had | ||
| # | ||
| # 0 string \377\330\377\340 JPEG file | ||
| # 0 string \377\330\377\356 JPG file | ||
| # | ||
| # both of which turn into "JPEG image data" here. | ||
| # | ||
| 0 beshort 0xffd8 JPEG image data | ||
| !:mime image/jpeg | ||
| !:apple 8BIMJPEG | ||
| !:strength +2 | ||
| >6 string JFIF \b, JFIF standard | ||
| # The following added by Erik Rossen <rossen@freesurf.ch> 1999-09-06 | ||
| # in a vain attempt to add image size reporting for JFIF. Note that these | ||
| # tests are not fool-proof since some perfectly valid JPEGs are currently | ||
| # impossible to specify in magic(4) format. | ||
| # First, a little JFIF version info: | ||
| >>11 byte x \b %d. | ||
| >>12 byte x \b%02d | ||
| # Next, the resolution or aspect ratio of the image: | ||
| >>13 byte 0 \b, aspect ratio | ||
| >>13 byte 1 \b, resolution (DPI) | ||
| >>13 byte 2 \b, resolution (DPCM) | ||
| >>14 beshort x \b, density %dx | ||
| >>16 beshort x \b%d | ||
| >>4 beshort x \b, segment length %d | ||
| # Next, show thumbnail info, if it exists: | ||
| >>18 byte !0 \b, thumbnail %dx | ||
| >>>19 byte x \b%d | ||
| >6 string Exif \b, Exif standard: [ | ||
| >>12 indirect/r x | ||
| >>12 string x \b] | ||
|
|
||
| # Jump to the first segment | ||
| >(4.S+4) use jpeg_segment | ||
|
|
||
| # This uses recursion... | ||
| 0 name jpeg_segment | ||
| >0 beshort 0xFFFE | ||
| >>(2.S+2) use jpeg_segment | ||
| >>2 pstring/HJ x \b, comment: "%s" | ||
|
|
||
| >0 beshort 0xFFC0 | ||
| >>(2.S+2) use jpeg_segment | ||
| >>4 byte x \b, baseline, precision %d | ||
| >>7 beshort x \b, %dx | ||
| >>5 beshort x \b%d | ||
| >>9 byte x \b, frames %d | ||
|
|
||
| >0 beshort 0xFFC1 | ||
| >>(2.S+2) use jpeg_segment | ||
| >>4 byte x \b, extended sequential, precision %d | ||
| >>7 beshort x \b, %dx | ||
| >>5 beshort x \b%d | ||
| >>9 byte x \b, frames %d | ||
|
|
||
| >0 beshort 0xFFC2 | ||
| >>(2.S+2) use jpeg_segment | ||
| >>4 byte x \b, progressive, precision %d | ||
| >>7 beshort x \b, %dx | ||
| >>5 beshort x \b%d | ||
| >>9 byte x \b, frames %d | ||
|
|
||
| # Define Huffman Tables | ||
| >0 beshort 0xFFC4 | ||
| >>(2.S+2) use jpeg_segment | ||
|
|
||
| >0 beshort 0xFFE1 | ||
| #>>(2.S+2) use jpeg_segment | ||
| >>4 string Exif \b, Exif Standard: [ | ||
| >>>10 indirect/r x | ||
| >>>10 string x \b] | ||
|
|
||
| # Application specific markers | ||
| >0 beshort&0xFFE0 =0xFFE0 | ||
| >>(2.S+2) use jpeg_segment | ||
|
|
||
| # DB: Define Quantization tables | ||
| # DD: Define Restart interval [XXX: wrong here, it is 4 bytes] | ||
| # D8: Start of image | ||
| # D9: End of image | ||
| # Dn: Restart | ||
| >0 beshort&0xFFD0 =0xFFD0 | ||
| >>(2.S+2) use jpeg_segment | ||
|
|
||
| #>0 beshort x unknown 0x%x | ||
| #>>(2.S+2) use jpeg_segment | ||
|
|
||
| # HSI is Handmade Software's proprietary JPEG encoding scheme | ||
| 0 string hsi1 JPEG image data, HSI proprietary | ||
|
|
||
| # From: David Santinoli <david@santinoli.com> | ||
| 0 string \x00\x00\x00\x0C\x6A\x50\x20\x20\x0D\x0A\x87\x0A JPEG 2000 | ||
| # From: Johan van der Knijff <johan.vanderknijff@kb.nl> | ||
| # Added sub-entries for JP2, JPX, JPM and MJ2 formats; added mimetypes | ||
| # https://github.com/bitsgalore/jp2kMagic | ||
| # | ||
| # Now read value of 'Brand' field, which yields a few possibilities: | ||
| >20 string \x6a\x70\x32\x20 Part 1 (JP2) | ||
| !:mime image/jp2 | ||
| >20 string \x6a\x70\x78\x20 Part 2 (JPX) | ||
| !:mime image/jpx | ||
| >20 string \x6a\x70\x6d\x20 Part 6 (JPM) | ||
| !:mime image/jpm | ||
| >20 string \x6d\x6a\x70\x32 Part 3 (MJ2) | ||
| !:mime video/mj2 | ||
|
|
||
| # Type: JPEG 2000 codesream | ||
| # From: Mathieu Malaterre <mathieu.malaterre@gmail.com> | ||
| 0 belong 0xff4fff51 JPEG 2000 codestream | ||
| 45 beshort 0xff52 |
| @@ -1,8 +1,9 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: karma,v 1.7 2014/04/30 21:41:02 christos Exp $ | ||
| # karma: file(1) magic for Karma data files | ||
| # | ||
| # From <rgooch@atnf.csiro.au> | ||
|
|
||
| 0 string KarmaRHD Version Karma Data Structure Version | ||
| >16 belong x %u |
| @@ -0,0 +1,11 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: kde,v 1.5 2010/11/25 15:00:12 christos Exp $ | ||
| # kde: file(1) magic for KDE | ||
|
|
||
| 0 string/t [KDE\ Desktop\ Entry] KDE desktop entry | ||
| !:mime application/x-kdelnk | ||
| 0 string/t #\ KDE\ Config\ File KDE config file | ||
| !:mime application/x-kdelnk | ||
| 0 string/t #\ xmcd xmcd database file for kscd | ||
| !:mime text/x-xmcd |
| @@ -0,0 +1,20 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: keepass,v 1.1 2012/12/24 22:14:56 christos Exp $ | ||
| # keepass: file(1) magic for KeePass file | ||
| # | ||
| # Keepass Password Safe: | ||
| # * original one: http://keepass.info/ | ||
| # * *nix port: http://www.keepassx.org/ | ||
| # * android port: http://code.google.com/p/keepassdroid/ | ||
|
|
||
| 0 lelong 0x9AA2D903 Keepass password database | ||
| >4 lelong 0xB54BFB65 1.x KDB | ||
| >>48 lelong >0 \b, %d groups | ||
| >>52 lelong >0 \b, %d entries | ||
| >>8 lelong&0x0f 1 \b, SHA-256 | ||
| >>8 lelong&0x0f 2 \b, AES | ||
| >>8 lelong&0x0f 4 \b, RC4 | ||
| >>8 lelong&0x0f 8 \b, Twofish | ||
| >>120 lelong >0 \b, %d key transformation rounds | ||
| >4 lelong 0xB54BFB67 2.x KDBX |
| @@ -0,0 +1,45 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: kerberos,v 1.1 2014/12/10 18:45:43 christos Exp $ | ||
| # kerberos: MIT kerberos file binary formats | ||
| # | ||
|
|
||
| # This magic entry is for demonstration purposes and could be improved | ||
| # if the following features were implemented in file: | ||
| # | ||
| # Strings inside [[ .. ]] in the descriptions have special meanings and | ||
| # are not printed. | ||
| # | ||
| # - Provide some form of iteration in number of components | ||
| # [[${counter}=%d]] in the description | ||
| # then append | ||
| # [${counter}--] in the offset of the entries | ||
| # - Provide a way to round the next offset | ||
| # Add [R:4] after the offset? | ||
| # - Provide a way to have optional entries | ||
| # XXX: Syntax: | ||
| # - Provide a way to "save" entries to print them later. | ||
| # if the description is [[${name}=%s]], then nothing is | ||
| # printed and a subsequent entry in the same magic file | ||
| # can refer to ${name} | ||
| # - Provide a way to format strings as hex values | ||
| # | ||
| # http://www.gnu.org/software/shishi/manual/html_node/\ | ||
| # The-Keytab-Binary-File-Format.html | ||
| # | ||
|
|
||
| 0 name keytab_entry | ||
| #>0 beshort x \b, size=%d | ||
| #>2 beshort x \b, components=%d | ||
| >4 pstring/H x \b, realm=%s | ||
| >>&0 pstring/H x \b, principal=%s/ | ||
| >>>&0 pstring/H x \b%s | ||
| >>>>&0 belong x \b, type=%d | ||
| >>>>>&0 bedate x \b, date=%s | ||
| >>>>>>&0 byte x \b, kvno=%u | ||
| #>>>>>>>&0 pstring/H x | ||
| #>>>>>>>>&0 belong x | ||
| #>>>>>>>>>>&0 use keytab_entry | ||
|
|
||
| 0 belong 0x05020000 Kerberos Keytab file | ||
| >4 use keytab_entry |
| @@ -1,4 +1,6 @@ | ||
|
|
||
| #------------------------------------------------------------------------------ | ||
| # $File: lecter,v 1.4 2009/09/19 16:28:10 christos Exp $ | ||
| # DEC SRC Virtual Paper: Lectern files | ||
| # Karl M. Hegbloom <karlheg@inetarena.com> | ||
| 0 string lect DEC SRC Virtual Paper Lectern file |