import file-5.19

2014-06-09   9:04  Christos Zoulas <christos@zoulas.com>

	* Misc buffer overruns and missing buffer size tests in cdf parsing
	  (Francisco Alonso, Jan Kaluza)

2014-06-02  14:50  Christos Zoulas <christos@zoulas.com>

	* Enforce limit of 8K on regex searches that have no limits
	* Allow the l modifier for regex to mean line count. Default
	  to byte count. If line count is specified, assume a max
	  of 80 characters per line to limit the byte count.
	* Don't allow conversions to be used for dates, allowing
	  the mask field to be used as an offset.

2014-05-30  12:51  Christos Zoulas <christos@zoulas.com>

	* Make the range operator limit the length of the
	  regex search.

2014-05-14  19:23  Christos Zoulas <christos@zoulas.com>

	* PR/347: Windows fixes
	* PR/352: Hangul word processor recognition
	* PR/354: Encoding irregularities in text files

2014-05-06  6:12  Christos Zoulas <christos@zoulas.com>

	* Fix uninitialized title in CDF files (Jan Kaluza)

2014-05-04  14:55  Christos Zoulas <christos@zoulas.com>

	* PR/351: Fix compilation of empty files

2014-04-30  17:39  Christos Zoulas <christos@zoulas.com>

	* Fix integer formats: We don't specify 'l' or
	  'h' and 'hh' specifiers anymore, only 'll' for
	  quads and nothing for the rest. This is so that
	  magic writing is simpler.

2014-04-01  15:25  Christos Zoulas <christos@zoulas.com>

	* PR/341: Jan Kaluza, fix memory leak
	* PR/342: Jan Kaluza, fix out of bounds read

2014-03-28  15:25  Christos Zoulas <christos@zoulas.com>

	* Fix issue with long formats not matching fmtcheck
This commit is contained in:
christos 2014-06-13 01:48:18 +00:00
parent 26f35dd6b6
commit 012fd1339d
123 changed files with 5933 additions and 3026 deletions

View File

@ -1,3 +1,116 @@
2014-06-12 12:28 Christos Zoulas <christos@zoulas.com>
* release 5.19
2014-06-09 9:04 Christos Zoulas <christos@zoulas.com>
* Misc buffer overruns and missing buffer size tests in cdf parsing
(Francisco Alonso, Jan Kaluza)
2014-06-02 14:50 Christos Zoulas <christos@zoulas.com>
* Enforce limit of 8K on regex searches that have no limits
* Allow the l modifier for regex to mean line count. Default
to byte count. If line count is specified, assume a max
of 80 characters per line to limit the byte count.
* Don't allow conversions to be used for dates, allowing
the mask field to be used as an offset.
2014-05-30 12:51 Christos Zoulas <christos@zoulas.com>
* Make the range operator limit the length of the
regex search.
2014-05-14 19:23 Christos Zoulas <christos@zoulas.com>
* PR/347: Windows fixes
* PR/352: Hangul word processor recognition
* PR/354: Encoding irregularities in text files
2014-05-06 6:12 Christos Zoulas <christos@zoulas.com>
* Fix uninitialized title in CDF files (Jan Kaluza)
2014-05-04 14:55 Christos Zoulas <christos@zoulas.com>
* PR/351: Fix compilation of empty files
2014-04-30 17:39 Christos Zoulas <christos@zoulas.com>
* Fix integer formats: We don't specify 'l' or
'h' and 'hh' specifiers anymore, only 'll' for
quads and nothing for the rest. This is so that
magic writing is simpler.
2014-04-01 15:25 Christos Zoulas <christos@zoulas.com>
* PR/341: Jan Kaluza, fix memory leak
* PR/342: Jan Kaluza, fix out of bounds read
2014-03-28 15:25 Christos Zoulas <christos@zoulas.com>
* Fix issue with long formats not matching fmtcheck
2014-03-26 11:25 Christos Zoulas <christos@zoulas.com>
* release 5.18
2014-03-15 17:45 Christos Zoulas <christos@zoulas.com>
* add fmtcheck(3) for those who don't have it
2014-03-14 15:12 Christos Zoulas <christos@zoulas.com>
* prevent mime entries from being attached to magic
entries with no descriptions
* adjust magic strength for regex type
* remove superfluous ascmagic with encoding test
2014-03-06 12:01 Christos Zoulas <christos@zoulas.com>
* fix regression fix echo -ne "\012\013\014" | file -i -
which printed "binary" instead of "application/octet-stream"
* add size_t overflow check for magic file size
2014-02-27 16:01 Christos Zoulas <christos@zoulas.com>
* experimental support for matching with CFD CLSID
2014-02-18 13:04 Kimmo Suominen (kimmo@suominen.com)
* Cache old LC_CTYPE locale before setting it to "C", so
we can use it to restore LC_CTYPE instead of asking
setlocale() to scan the environment variables.
2014-02-12 18:21 Christos Zoulas <christos@zoulas.com>
* Count recursion levels through indirect magic
2014-02-11 10:40 Christos Zoulas <christos@zoulas.com>
* Prevent infinite recursion on files with indirect offsets of 0
2014-01-30 21:00 Christos Zoulas <christos@zoulas.com>
* Add -E flag that makes file print filesystem errors to stderr
and exit.
2014-01-08 17:20 Christos Zoulas <christos@zoulas.com>
* mime printing could print results from multiple magic entries
if there were multiple matches.
* in some cases overflow was not detected when computing offsets
in softmagic.
2013-12-05 12:00 Christos Zoulas <christos@zoulas.com>
* use strcasestr() to for cdf strings
* reset to the "C" locale while doing regex operations, or case
insensitive comparisons; this is provisional
2013-11-19 20:10 Christos Zoulas <christos@zoulas.com> 2013-11-19 20:10 Christos Zoulas <christos@zoulas.com>
* always leave magic file loaded, don't unload for magic_check, etc. * always leave magic file loaded, don't unload for magic_check, etc.
@ -980,7 +1093,7 @@
* Identify gnu tar vs. posix tar * Identify gnu tar vs. posix tar
* When keep going, don't print spurious newlines (Radek Vokál) * When keep going, don't print spurious newlines (Radek Vokal)
2006-04-01 12:02 Christos Zoulas <christos@astron.com> 2006-04-01 12:02 Christos Zoulas <christos@astron.com>
@ -1004,7 +1117,7 @@
2005-10-31 8:54 Christos Zoulas <christos@astron.com> 2005-10-31 8:54 Christos Zoulas <christos@astron.com>
* Fix regression where the core info was not completely processed * Fix regression where the core info was not completely processed
(Radek Vokál) (Radek Vokal)
2005-10-20 11:15 Christos Zoulas <christos@astron.com> 2005-10-20 11:15 Christos Zoulas <christos@astron.com>
@ -1021,7 +1134,7 @@
2005-09-20 13:33 Christos Zoulas <christos@astron.com> 2005-09-20 13:33 Christos Zoulas <christos@astron.com>
* Don't print SVR4 Style in core files multiple times * Don't print SVR4 Style in core files multiple times
(Radek Vokál) (Radek Vokal)
2005-08-27 04:09 Christos Zoulas <christos@astron.com> 2005-08-27 04:09 Christos Zoulas <christos@astron.com>

View File

@ -1,11 +1,14 @@
** README for file(1) Command ** ## README for file(1) Command ##
@(#) $File: README,v 1.47 2013/06/04 23:15:02 ian Exp $
Mailing List: file@mx.gw.com @(#) $File: README,v 1.48 2014/03/07 13:55:30 christos Exp $
Mailing List archives: http://mx.gw.com/pipermail/file/
Bug tracker: http://bugs.gw.com/ Mailing List: file@mx.gw.com
Mailing List archives: http://mx.gw.com/pipermail/file/
Bug tracker: http://bugs.gw.com/
E-mail: christos@astron.com E-mail: christos@astron.com
[![Build Status](https://travis-ci.org/file/file.png?branch=master)](https://travis-ci.org/file/file)
Phone: Do not even think of telephoning me about this program. Send cash first! Phone: Do not even think of telephoning me about this program. Send cash first!
This is Release 5.x of Ian Darwin's (copyright but distributable) This is Release 5.x of Ian Darwin's (copyright but distributable)
@ -20,7 +23,7 @@ You can download the latest version of the original sources for file from:
A public read-only git repository of the same sources is available at: A public read-only git repository of the same sources is available at:
https://github.com/glensc/file https://github.com/file/file
The major changes for 5.x are CDF file parsing, indirect magic, and The major changes for 5.x are CDF file parsing, indirect magic, and
overhaul in mime and ascii encoding handling. overhaul in mime and ascii encoding handling.
@ -61,40 +64,41 @@ magic numbers assigned to all sorts of data files that
are in reasonable circulation. Send your magic numbers, are in reasonable circulation. Send your magic numbers,
in magic(5) format please, to the maintainer, Christos Zoulas. in magic(5) format please, to the maintainer, Christos Zoulas.
COPYING - read this first. COPYING - read this first.
README - read this second (you are currently reading this file). README - read this second (you are currently reading this file).
INSTALL - read on how to install INSTALL - read on how to install
src/apprentice.c - parses /etc/magic to learn magic src/apprentice.c - parses /etc/magic to learn magic
src/apptype.c - used for OS/2 specific application type magic src/apptype.c - used for OS/2 specific application type magic
src/asprintf.c - replacement for OS's that don't have it. src/asprintf.c - replacement for OS's that don't have it.
src/ascmagic.c - third & last set of tests, based on hardwired assumptions. src/ascmagic.c - third & last set of tests, based on hardwired assumptions.
src/asctime_r.c - for systems that don't have it. src/asctime_r.c - for systems that don't have it.
src/asprintf.c - for systems that don't have it. src/asprintf.c - for systems that don't have it.
src/cdf.c - parser for Microsoft Compound Document Files src/cdf.c - parser for Microsoft Compound Document Files
src/cdf_time.c - time converter for CDF. src/cdf_time.c - time converter for CDF.
src/compress.c - handles decompressing files to look inside. src/compress.c - handles decompressing files to look inside.
src/ctime_r.c - for systems that don't have it. src/ctime_r.c - for systems that don't have it.
src/encoding.c - handles unicode encodings src/encoding.c - handles unicode encodings
src/file.c - the main program src/file.c - the main program
src/file.h - header file src/file.h - header file
src/fsmagic.c - first set of tests the program runs, based on filesystem info src/fsmagic.c - first set of tests the program runs, based on filesystem info
src/funcs.c - utilility functions src/funcs.c - utilility functions
src/getopt_long.c - for systems that don't have it. src/getopt_long.c - for systems that don't have it.
src/getline.c - for systems that don't have it. src/getline.c - for systems that don't have it.
src/is_tar.c, tar.h - knows about tarchives (courtesy John Gilmore). src/is_tar.c, tar.h - knows about tarchives (courtesy John Gilmore).
src/names.h - header file for ascmagic.c src/names.h - header file for ascmagic.c
src/magic.c - the libmagic api src/magic.c - the libmagic api
src/print.c - print results, errors, warnings. src/print.c - print results, errors, warnings.
src/readcdf.c - CDF wrapper. src/readcdf.c - CDF wrapper.
src/readelf.[ch] - Stand-alone elf parsing code. src/readelf.[ch] - Stand-alone elf parsing code.
src/softmagic.c - 2nd set of tests, based on /etc/magic src/softmagic.c - 2nd set of tests, based on /etc/magic
src/strlcat.c - for systems that don't have it. src/strlcat.c - for systems that don't have it.
src/strlcpy.c - for systems that don't have it. src/strlcpy.c - for systems that don't have it.
src/vasprintf.c - for systems that don't have it. src/vasprintf.c - for systems that don't have it.
doc/file.man - man page for the command doc/file.man - man page for the command
doc/magic.man - man page for the magic file, courtesy Guy Harris. doc/magic.man - man page for the magic file, courtesy Guy Harris.
Install as magic.4 on USG and magic.5 on V7 or Berkeley; cf Makefile. Install as magic.4 on USG and magic.5 on V7 or Berkeley; cf Makefile.
Magdir - directory of /etc/magic pieces Magdir - directory of /etc/magic pieces
------------------------------------------------------------------------------ ------------------------------------------------------------------------------

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,13 +1,14 @@
# Helper functions for option handling. -*- Autoconf -*- # Helper functions for option handling. -*- Autoconf -*-
# #
# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. # Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# Written by Gary V. Vaughan, 2004 # Written by Gary V. Vaughan, 2004
# #
# This file is free software; the Free Software Foundation gives # This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without # unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved. # modifications, as long as this notice is preserved.
# serial 6 ltoptions.m4 # serial 7 ltoptions.m4
# This is to help aclocal find these macros, as it can't see m4_define. # This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
@ -125,7 +126,7 @@ LT_OPTION_DEFINE([LT_INIT], [win32-dll],
[enable_win32_dll=yes [enable_win32_dll=yes
case $host in case $host in
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*) *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
AC_CHECK_TOOL(AS, as, false) AC_CHECK_TOOL(AS, as, false)
AC_CHECK_TOOL(DLLTOOL, dlltool, false) AC_CHECK_TOOL(DLLTOOL, dlltool, false)
AC_CHECK_TOOL(OBJDUMP, objdump, false) AC_CHECK_TOOL(OBJDUMP, objdump, false)
@ -133,13 +134,13 @@ case $host in
esac esac
test -z "$AS" && AS=as test -z "$AS" && AS=as
_LT_DECL([], [AS], [0], [Assembler program])dnl _LT_DECL([], [AS], [1], [Assembler program])dnl
test -z "$DLLTOOL" && DLLTOOL=dlltool test -z "$DLLTOOL" && DLLTOOL=dlltool
_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
test -z "$OBJDUMP" && OBJDUMP=objdump test -z "$OBJDUMP" && OBJDUMP=objdump
_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
])# win32-dll ])# win32-dll
AU_DEFUN([AC_LIBTOOL_WIN32_DLL], AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
@ -325,9 +326,24 @@ dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
# MODE is either `yes' or `no'. If omitted, it defaults to `both'. # MODE is either `yes' or `no'. If omitted, it defaults to `both'.
m4_define([_LT_WITH_PIC], m4_define([_LT_WITH_PIC],
[AC_ARG_WITH([pic], [AC_ARG_WITH([pic],
[AS_HELP_STRING([--with-pic], [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])], [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
[pic_mode="$withval"], [lt_p=${PACKAGE-default}
case $withval in
yes|no) pic_mode=$withval ;;
*)
pic_mode=default
# Look at the argument we got. We use all the common list separators.
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
for lt_pkg in $withval; do
IFS="$lt_save_ifs"
if test "X$lt_pkg" = "X$lt_p"; then
pic_mode=yes
fi
done
IFS="$lt_save_ifs"
;;
esac],
[pic_mode=default]) [pic_mode=default])
test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) test -z "$pic_mode" && pic_mode=m4_default([$1], [default])

View File

@ -7,17 +7,17 @@
# unlimited permission to copy and/or distribute it, with or without # unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved. # modifications, as long as this notice is preserved.
# Generated from ltversion.in. # @configure_input@
# serial 3017 ltversion.m4 # serial 3337 ltversion.m4
# This file is part of GNU Libtool # This file is part of GNU Libtool
m4_define([LT_PACKAGE_VERSION], [2.2.6b]) m4_define([LT_PACKAGE_VERSION], [2.4.2])
m4_define([LT_PACKAGE_REVISION], [1.3017]) m4_define([LT_PACKAGE_REVISION], [1.3337])
AC_DEFUN([LTVERSION_VERSION], AC_DEFUN([LTVERSION_VERSION],
[macro_version='2.2.6b' [macro_version='2.4.2'
macro_revision='1.3017' macro_revision='1.3337'
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
_LT_DECL(, macro_revision, 0) _LT_DECL(, macro_revision, 0)
]) ])

View File

@ -1,13 +1,13 @@
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
# #
# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. # Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
# Written by Scott James Remnant, 2004. # Written by Scott James Remnant, 2004.
# #
# This file is free software; the Free Software Foundation gives # This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without # unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved. # modifications, as long as this notice is preserved.
# serial 4 lt~obsolete.m4 # serial 5 lt~obsolete.m4
# These exist entirely to fool aclocal when bootstrapping libtool. # These exist entirely to fool aclocal when bootstrapping libtool.
# #
@ -77,7 +77,6 @@ m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])])
m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
@ -90,3 +89,10 @@ m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------ #------------------------------------------------------------
# $File: android,v 1.3 2013/11/08 01:24:22 christos Exp $ # $File: android,v 1.4 2014/06/03 19:01:34 christos Exp $
# Various android related magic entries # Various android related magic entries
#------------------------------------------------------------ #------------------------------------------------------------
@ -89,12 +89,12 @@
>17 string 0\n \b, Not-Compressed >17 string 0\n \b, Not-Compressed
>17 string 1\n \b, Compressed >17 string 1\n \b, Compressed
# any string as long as it's not the word none (which is matched below) # any string as long as it's not the word none (which is matched below)
>>19 regex/1 \^([^n\n]|n[^o]|no[^n]|non[^e]|none.+).* \b, Encrypted (%s) >>19 regex/1l \^([^n\n]|n[^o]|no[^n]|non[^e]|none.+).* \b, Encrypted (%s)
>>19 string none\n \b, Not-Encrypted >>19 string none\n \b, Not-Encrypted
# Commented out because they don't seem useful to print # Commented out because they don't seem useful to print
# (but they are part of the header - the tar file comes after them): # (but they are part of the header - the tar file comes after them):
#>>>&1 regex/1 .* \b, Password salt: %s #>>>&1 regex/1l .* \b, Password salt: %s
#>>>>&1 regex/1 .* \b, Master salt: %s #>>>>&1 regex/1l .* \b, Master salt: %s
#>>>>>&1 regex/1 .* \b, PBKDF2 rounds: %s #>>>>>&1 regex/1l .* \b, PBKDF2 rounds: %s
#>>>>>>&1 regex/1 .* \b, IV: %s #>>>>>>&1 regex/1l .* \b, IV: %s
#>>>>>>>&1 regex/1 .* \b, Key: %s #>>>>>>>&1 regex/1l .* \b, Key: %s

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: animation,v 1.49 2013/08/15 13:15:11 christos Exp $ # $File: animation,v 1.53 2014/04/30 21:41:02 christos Exp $
# animation: file(1) magic for animation/movie formats # animation: file(1) magic for animation/movie formats
# #
# animation formats # animation formats
@ -451,6 +451,7 @@
# MP2, M2A # MP2, M2A
0 beshort&0xFFFE 0xFFF4 MPEG ADTS, layer II, v2 0 beshort&0xFFFE 0xFFF4 MPEG ADTS, layer II, v2
!:mime audio/mpeg
# rate # rate
>2 byte&0xF0 0x10 \b, 8 kbps >2 byte&0xF0 0x10 \b, 8 kbps
>2 byte&0xF0 0x20 \b, 16 kbps >2 byte&0xF0 0x20 \b, 16 kbps
@ -620,7 +621,7 @@
# Live MPEG-4 audio streams (instead of RTP FlexMux) # Live MPEG-4 audio streams (instead of RTP FlexMux)
0 beshort&0xFFE0 0x56E0 MPEG-4 LOAS 0 beshort&0xFFE0 0x56E0 MPEG-4 LOAS
!:mime audio/x-mp4a-latm !:mime audio/x-mp4a-latm
#>1 beshort&0x1FFF x \b, %u byte packet #>1 beshort&0x1FFF x \b, %hu byte packet
>3 byte&0xE0 0x40 >3 byte&0xE0 0x40
>>4 byte&0x3C 0x04 \b, single stream >>4 byte&0x3C 0x04 \b, single stream
>>4 byte&0x3C 0x08 \b, 2 streams >>4 byte&0x3C 0x08 \b, 2 streams
@ -718,16 +719,16 @@
!:mime video/x-mng !:mime video/x-mng
>4 belong !0x0d0a1a0a CORRUPTED, >4 belong !0x0d0a1a0a CORRUPTED,
>4 belong 0x0d0a1a0a >4 belong 0x0d0a1a0a
>>16 belong x %ld x >>16 belong x %d x
>>20 belong x %ld >>20 belong x %d
# JNG Video Format, <URL:http://www.libpng.org/pub/mng/spec/> # JNG Video Format, <URL:http://www.libpng.org/pub/mng/spec/>
0 string \x8bJNG JNG video data, 0 string \x8bJNG JNG video data,
!:mime video/x-jng !:mime video/x-jng
>4 belong !0x0d0a1a0a CORRUPTED, >4 belong !0x0d0a1a0a CORRUPTED,
>4 belong 0x0d0a1a0a >4 belong 0x0d0a1a0a
>>16 belong x %ld x >>16 belong x %d x
>>20 belong x %ld >>20 belong x %d
# Vivo video (Wolfram Kleff) # Vivo video (Wolfram Kleff)
3 string \x0D\x0AVersion:Vivo Vivo video data 3 string \x0D\x0AVersion:Vivo Vivo video data
@ -788,25 +789,26 @@
# MPEG file # MPEG file
# MPEG sequences # MPEG sequences
# FIXME: This section is from the old magic.mime file and needs integrating with the rest # FIXME: This section is from the old magic.mime file and needs
0 belong 0x000001BA # integrating with the rest
>4 byte &0x40 #0 belong 0x000001BA
!:mime video/mp2p #>4 byte &0x40
>4 byte ^0x40 #!:mime video/mp2p
!:mime video/mpeg #>4 byte ^0x40
0 belong 0x000001BB #!:mime video/mpeg
!:mime video/mpeg #0 belong 0x000001BB
0 belong 0x000001B0 #!:mime video/mpeg
!:mime video/mp4v-es #0 belong 0x000001B0
0 belong 0x000001B5 #!:mime video/mp4v-es
!:mime video/mp4v-es #0 belong 0x000001B5
0 belong 0x000001B3 #!:mime video/mp4v-es
!:mime video/mpv #0 belong 0x000001B3
0 belong&0xFF5FFF10 0x47400010 #!:mime video/mpv
!:mime video/mp2t #0 belong&0xFF5FFF10 0x47400010
0 belong 0x00000001 #!:mime video/mp2t
>4 byte&0x1F 0x07 #0 belong 0x00000001
!:mime video/h264 #>4 byte&0x1F 0x07
#!:mime video/h264
# Type: Bink Video # Type: Bink Video
# Extension: .bik # Extension: .bik

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: att3b,v 1.8 2009/09/19 16:28:08 christos Exp $ # $File: att3b,v 1.9 2014/04/30 21:41:02 christos Exp $
# att3b: file(1) magic for AT&T 3B machines # att3b: file(1) magic for AT&T 3B machines
# #
# The `versions' should be un-commented if they work for you. # The `versions' should be un-commented if they work for you.
@ -11,10 +11,10 @@
# The 3B20 conflicts with SCCS. # The 3B20 conflicts with SCCS.
#0 beshort 0550 3b20 COFF executable #0 beshort 0550 3b20 COFF executable
#>12 belong >0 not stripped #>12 belong >0 not stripped
#>22 beshort >0 - version %ld #>22 beshort >0 - version %d
#0 beshort 0551 3b20 COFF executable (TV) #0 beshort 0551 3b20 COFF executable (TV)
#>12 belong >0 not stripped #>12 belong >0 not stripped
#>22 beshort >0 - version %ld #>22 beshort >0 - version %d
# #
# WE32K # WE32K
# #
@ -29,12 +29,12 @@
>20 beshort 0410 (pure) >20 beshort 0410 (pure)
>20 beshort 0413 (demand paged) >20 beshort 0413 (demand paged)
>20 beshort 0443 (target shared library) >20 beshort 0443 (target shared library)
>22 beshort >0 - version %ld >22 beshort >0 - version %d
0 beshort 0561 WE32000 COFF executable (TV) 0 beshort 0561 WE32000 COFF executable (TV)
>12 belong >0 not stripped >12 belong >0 not stripped
#>18 beshort &00020000 - 32100 required #>18 beshort &00020000 - 32100 required
#>18 beshort &00040000 and MAU hardware required #>18 beshort &00040000 and MAU hardware required
#>22 beshort >0 - version %ld #>22 beshort >0 - version %d
# #
# core file for 3b2 # core file for 3b2
0 string \000\004\036\212\200 3b2 core file 0 string \000\004\036\212\200 3b2 core file

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: audio,v 1.67 2013/08/14 09:01:45 christos Exp $ # $File: audio,v 1.71 2014/05/14 23:30:28 christos Exp $
# audio: file(1) magic for sound formats (see also "iff") # audio: file(1) magic for sound formats (see also "iff")
# #
# Jan Nicolai Langfeldt (janl@ifi.uio.no), Dan Quinlan (quinlan@yggdrasil.com), # Jan Nicolai Langfeldt (janl@ifi.uio.no), Dan Quinlan (quinlan@yggdrasil.com),
@ -104,7 +104,7 @@
# first entry is also the string "NTRK" # first entry is also the string "NTRK"
0 belong 0x4e54524b MultiTrack sound data 0 belong 0x4e54524b MultiTrack sound data
>4 belong x - version %ld >4 belong x - version %d
# Extended MOD format (*.emd) (Greg Roelofs, newt@uchicago.edu); NOT TESTED # Extended MOD format (*.emd) (Greg Roelofs, newt@uchicago.edu); NOT TESTED
# [based on posting 940824 by "Dirk/Elastik", husberg@lehtori.cc.tut.fi] # [based on posting 940824 by "Dirk/Elastik", husberg@lehtori.cc.tut.fi]
@ -638,7 +638,7 @@
# From: Mike Melanson <mike@multimedia.cx> # From: Mike Melanson <mike@multimedia.cx>
0 string wvpk WavPack Lossless Audio 0 string wvpk WavPack Lossless Audio
# From Fábio R. Schmidlin <frs@pop.com.br> # From Fabio R. Schmidlin <frs@pop.com.br>
# VGM music file # VGM music file
0 string Vgm\ 0 string Vgm\
>9 ubyte >0 VGM Video Game Music dump v >9 ubyte >0 VGM Video Game Music dump v
@ -689,4 +689,14 @@
>>>>0x78 ubyte 0x10 YM2149, >>>>0x78 ubyte 0x10 YM2149,
>>>>0x78 ubyte 0x11 YM3439, >>>>0x78 ubyte 0x11 YM3439,
# GVOX Encore file format
# Since this is a proprietary file format and there is no publicly available
# format specification, this is just based on induction
#
0 string SCOW
>4 byte 0xc4 GVOX Encore music, version 5.0 or above
>4 byte 0xc2 GVOX Encore music, version < 5.0
0 string ZBOT
>4 byte 0xc5 GVOX Encore music, version < 5.0

View File

@ -1,12 +1,12 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: bflt,v 1.4 2009/09/19 16:28:08 christos Exp $ # $File: bflt,v 1.5 2014/04/30 21:41:02 christos Exp $
# bFLT: file(1) magic for BFLT uclinux binary files # bFLT: file(1) magic for BFLT uclinux binary files
# #
# From Philippe De Muyter <phdm@macqel.be> # From Philippe De Muyter <phdm@macqel.be>
# #
0 string bFLT BFLT executable 0 string bFLT BFLT executable
>4 belong x - version %ld >4 belong x - version %d
>4 belong 4 >4 belong 4
>>36 belong&0x1 0x1 ram >>36 belong&0x1 0x1 ram
>>36 belong&0x2 0x2 gotpic >>36 belong&0x2 0x2 gotpic

View File

@ -0,0 +1,8 @@
#------------------------------------------------------------------------------
# $File: blackberry,v 1.1 2014/01/31 01:51:32 christos Exp $
# blackberry: file(1) magic for BlackBerry file formats
#
5 belong 0
>8 belong 010010010 BlackBerry RIM ETP file
>>22 string x \b for %s

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: bsdi,v 1.6 2013/01/09 22:37:24 christos Exp $ # $File: bsdi,v 1.7 2014/03/29 15:40:34 christos Exp $
# bsdi: file(1) magic for BSD/OS (from BSDI) objects # bsdi: file(1) magic for BSD/OS (from BSDI) objects
# Some object/executable formats use the same magic numbers as are used # Some object/executable formats use the same magic numbers as are used
# in other OSes; those are handled by entries in aout. # in other OSes; those are handled by entries in aout.
@ -11,7 +11,7 @@
>32 byte 0x6a (uses shared libs) >32 byte 0x6a (uses shared libs)
# same as in SunOS 4.x, except for static shared libraries # same as in SunOS 4.x, except for static shared libraries
0 belong&077777777 0600413 sparc demand paged 0 belong&077777777 0600413 SPARC demand paged
>0 byte &0x80 >0 byte &0x80
>>20 belong <4096 shared library >>20 belong <4096 shared library
>>20 belong =4096 dynamically linked executable >>20 belong =4096 dynamically linked executable
@ -20,13 +20,13 @@
>16 belong >0 not stripped >16 belong >0 not stripped
>36 belong 0xb4100001 (uses shared libs) >36 belong 0xb4100001 (uses shared libs)
0 belong&077777777 0600410 sparc pure 0 belong&077777777 0600410 SPARC pure
>0 byte &0x80 dynamically linked executable >0 byte &0x80 dynamically linked executable
>0 byte ^0x80 executable >0 byte ^0x80 executable
>16 belong >0 not stripped >16 belong >0 not stripped
>36 belong 0xb4100001 (uses shared libs) >36 belong 0xb4100001 (uses shared libs)
0 belong&077777777 0600407 sparc 0 belong&077777777 0600407 SPARC
>0 byte &0x80 dynamically linked executable >0 byte &0x80 dynamically linked executable
>0 byte ^0x80 executable >0 byte ^0x80 executable
>16 belong >0 not stripped >16 belong >0 not stripped

View File

@ -1,5 +1,5 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: c-lang,v 1.18 2013/08/14 13:06:43 christos Exp $ # $File: c-lang,v 1.19 2014/06/03 19:17:27 christos Exp $
# c-lang: file(1) magic for C and related languages programs # c-lang: file(1) magic for C and related languages programs
# #
@ -50,7 +50,7 @@
>7 string x version %.2s >7 string x version %.2s
# We skip the path here, because it is often long (so file will # We skip the path here, because it is often long (so file will
# truncate it) and mostly redundant. # truncate it) and mostly redundant.
# The inverted index functionality was added some time betwen # The inverted index functionality was added some time between
# versions 11 and 15, so look for -q if version is above 14: # versions 11 and 15, so look for -q if version is above 14:
>7 string >14 >7 string >14
>>10 search/100 \ -q\ with inverted index >>10 search/100 \ -q\ with inverted index

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: cad,v 1.12 2013/07/04 15:24:37 christos Exp $ # $File: cad,v 1.13 2014/03/23 18:05:38 christos Exp $
# autocad: file(1) magic for cad files # autocad: file(1) magic for cad files
# #
@ -149,3 +149,8 @@
# 3DS (3d Studio files) Conflicts with diff output 0x3d '=' # 3DS (3d Studio files) Conflicts with diff output 0x3d '='
#16 beshort 0x3d3d image/x-3ds #16 beshort 0x3d3d image/x-3ds
# MegaCAD 2D/3D drawing (.prt)
# http://megacad.de/
# From: Markus Heidelberg <markus.heidelberg@web.de>
0 string MegaCad23\0 MegaCAD 2D/3D drawing

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: cafebabe,v 1.14 2013/02/27 16:59:59 christos Exp $ # $File: cafebabe,v 1.16 2014/04/30 21:41:02 christos Exp $
# Cafe Babes unite! # Cafe Babes unite!
# #
# Since Java bytecode and Mach-O universal binaries have the same magic number, # Since Java bytecode and Mach-O universal binaries have the same magic number,
@ -16,8 +16,8 @@
# #
### JAVA START ### ### JAVA START ###
0 belong 0xcafebabe 0 belong 0xcafebabe
!:mime application/x-java-applet
>4 belong >30 compiled Java class data, >4 belong >30 compiled Java class data,
!:mime application/x-java-applet
>>6 beshort x version %d. >>6 beshort x version %d.
>>4 beshort x \b%d >>4 beshort x \b%d
# Which is which? # Which is which?
@ -52,7 +52,7 @@
>4 belong 1 Mach-O universal binary with 1 architecture: >4 belong 1 Mach-O universal binary with 1 architecture:
>>8 use mach-o \b >>8 use mach-o \b
>4 belong >1 >4 belong >1
>>4 belong <20 Mach-O universal binary with %ld architectures: >>4 belong <20 Mach-O universal binary with %d architectures:
>>>8 use mach-o \b >>>8 use mach-o \b
>>>28 use mach-o \b >>>28 use mach-o \b
>>4 belong >2 >>4 belong >2

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: clarion,v 1.4 2009/09/19 16:28:08 christos Exp $ # $File: clarion,v 1.5 2014/04/30 21:41:02 christos Exp $
# clarion: file(1) magic for # Clarion Personal/Professional Developer # clarion: file(1) magic for # Clarion Personal/Professional Developer
# (v2 and above) # (v2 and above)
# From: Julien Blache <jb@jblache.org> # From: Julien Blache <jb@jblache.org>
@ -15,7 +15,7 @@
>2 leshort &0x0010 \b, compressed >2 leshort &0x0010 \b, compressed
>2 leshort &0x0040 \b, read only >2 leshort &0x0040 \b, read only
# number of records # number of records
>5 lelong x \b, %ld records >5 lelong x \b, %d records
# Memo files # Memo files
0 leshort 0x334d Clarion Developer (v2 and above) memo data 0 leshort 0x334d Clarion Developer (v2 and above) memo data

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: claris,v 1.6 2012/06/20 21:19:05 christos Exp $ # $File: claris,v 1.7 2014/06/03 19:17:27 christos Exp $
# claris: file(1) magic for claris # claris: file(1) magic for claris
# "H. Nanosecond" <aldomel@ix.netcom.com> # "H. Nanosecond" <aldomel@ix.netcom.com>
# Claris Works a word processor, etc. # Claris Works a word processor, etc.
@ -20,7 +20,7 @@
# .cwk # .cwk
0 string \002\000\210\003\102\117\102\117\000\001\206 Claris works document 0 string \002\000\210\003\102\117\102\117\000\001\206 Claris works document
# .plt # .plt
0 string \020\341\000\000\010\010 Claris Works pallete files .plt 0 string \020\341\000\000\010\010 Claris Works palette files .plt
# .msp a dictionary file I am not sure about this I have only one .msp file # .msp a dictionary file I am not sure about this I have only one .msp file
0 string \002\271\262\000\040\002\000\164 Claris works dictionary 0 string \002\271\262\000\040\002\000\164 Claris works dictionary

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: clipper,v 1.6 2009/09/19 16:28:08 christos Exp $ # $File: clipper,v 1.7 2014/04/30 21:41:02 christos Exp $
# clipper: file(1) magic for Intergraph (formerly Fairchild) Clipper. # clipper: file(1) magic for Intergraph (formerly Fairchild) Clipper.
# #
# XXX - what byte order does the Clipper use? # XXX - what byte order does the Clipper use?
@ -35,7 +35,7 @@
>20 short 0413 (demand paged) >20 short 0413 (demand paged)
>20 short 0443 (target shared library) >20 short 0443 (target shared library)
>12 long >0 not stripped >12 long >0 not stripped
>22 short >0 - version %ld >22 short >0 - version %d
0 short 0577 CLIPPER COFF executable 0 short 0577 CLIPPER COFF executable
>18 short&074000 000000 C1 R1 >18 short&074000 000000 C1 R1
>18 short&074000 004000 C2 R1 >18 short&074000 004000 C2 R1
@ -47,7 +47,7 @@
>20 short 0413 (paged) >20 short 0413 (paged)
>20 short 0443 (target shared library) >20 short 0443 (target shared library)
>12 long >0 not stripped >12 long >0 not stripped
>22 short >0 - version %ld >22 short >0 - version %d
>48 long&01 01 alignment trap enabled >48 long&01 01 alignment trap enabled
>52 byte 1 -Ctnc >52 byte 1 -Ctnc
>52 byte 2 -Ctsw >52 byte 2 -Ctsw

View File

@ -1,16 +1,23 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: commands,v 1.46 2013/03/25 14:06:55 christos Exp $ # $File: commands,v 1.50 2014/05/30 16:48:44 christos Exp $
# commands: file(1) magic for various shells and interpreters # commands: file(1) magic for various shells and interpreters
# #
#0 string/w : shell archive or script for antique kernel text #0 string/w : shell archive or script for antique kernel text
0 string/wt #!\ /bin/sh POSIX shell script text executable 0 string/wt #!\ /bin/sh POSIX shell script text executable
!:mime text/x-shellscript !: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 0 string/wt #!\ /bin/csh C shell script text executable
!:mime text/x-shellscript !:mime text/x-shellscript
# korn shell magic, sent by George Wu, gwu@clyde.att.com # korn shell magic, sent by George Wu, gwu@clyde.att.com
0 string/wt #!\ /bin/ksh Korn shell script text executable 0 string/wt #!\ /bin/ksh Korn shell script text executable
!:mime text/x-shellscript !: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 0 string/wt #!\ /bin/tcsh Tenex C shell script text executable
!:mime text/x-shellscript !:mime text/x-shellscript
0 string/wt #!\ /usr/bin/tcsh Tenex C shell script text executable 0 string/wt #!\ /usr/bin/tcsh Tenex C shell script text executable
@ -49,7 +56,7 @@
!:mime text/x-awk !:mime text/x-awk
0 string/wt #!\ /usr/bin/awk awk script text executable 0 string/wt #!\ /usr/bin/awk awk script text executable
!:mime text/x-awk !:mime text/x-awk
0 regex =^\\s{0,100}BEGIN\\s{0,100}[{] awk script text 0 regex/4096 =^\\s{0,100}BEGIN\\s{0,100}[{] awk script text
# AT&T Bell Labs' Plan 9 shell # AT&T Bell Labs' Plan 9 shell
0 string/wt #!\ /bin/rc Plan 9 rc shell script text executable 0 string/wt #!\ /bin/rc Plan 9 rc shell script text executable
@ -57,12 +64,20 @@
# bash shell magic, from Peter Tobias (tobias@server.et-inf.fho-emden.de) # bash shell magic, from Peter Tobias (tobias@server.et-inf.fho-emden.de)
0 string/wt #!\ /bin/bash Bourne-Again shell script text executable 0 string/wt #!\ /bin/bash Bourne-Again shell script text executable
!:mime text/x-shellscript !: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 0 string/wt #!\ /usr/bin/bash Bourne-Again shell script text executable
!:mime text/x-shellscript !: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 0 string/wt #!\ /usr/local/bash Bourne-Again shell script text executable
!:mime text/x-shellscript !: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 0 string/wt #!\ /usr/local/bin/bash Bourne-Again shell script text executable
!:mime text/x-shellscript !:mime text/x-shellscript
0 string/wb #!\ /usr/local/bin/bash Bourne-Again shell script executable (binary data)
!:mime text/x-shellscript
# PHP scripts # PHP scripts
# Ulf Harnhammar <ulfh@update.uu.se> # Ulf Harnhammar <ulfh@update.uu.se>

View File

@ -1,5 +1,5 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: compress,v 1.51 2013/11/19 20:38:57 christos Exp $ # $File: compress,v 1.58 2014/05/07 19:36:59 christos Exp $
# compress: file(1) magic for pure-compression formats (no archives) # compress: file(1) magic for pure-compression formats (no archives)
# #
# compress, gzip, pack, compact, huf, squeeze, crunch, freeze, yabba, etc. # compress, gzip, pack, compact, huf, squeeze, crunch, freeze, yabba, etc.
@ -22,6 +22,7 @@
# other than 8 ("deflate", the only method defined in RFC 1952). # other than 8 ("deflate", the only method defined in RFC 1952).
0 string \037\213 gzip compressed data 0 string \037\213 gzip compressed data
!:mime application/x-gzip !:mime application/x-gzip
!:strength * 2
>2 byte <8 \b, reserved method >2 byte <8 \b, reserved method
>2 byte >8 \b, unknown method >2 byte >8 \b, unknown method
>3 byte &0x01 \b, ASCII >3 byte &0x01 \b, ASCII
@ -30,6 +31,10 @@
>3 byte&0xC =0x08 >3 byte&0xC =0x08
>>10 string x \b, was "%s" >>10 string x \b, was "%s"
>3 byte &0x10 \b, has comment >3 byte &0x10 \b, has comment
>3 byte &0x20 \b, encrypted
>4 ledate >0 \b, last modified: %s
>8 byte 2 \b, max compression
>8 byte 4 \b, max speed
>9 byte =0x00 \b, from FAT filesystem (MS-DOS, OS/2, NT) >9 byte =0x00 \b, from FAT filesystem (MS-DOS, OS/2, NT)
>9 byte =0x01 \b, from Amiga >9 byte =0x01 \b, from Amiga
>9 byte =0x02 \b, from VMS >9 byte =0x02 \b, from VMS
@ -44,11 +49,6 @@
>9 byte =0x0B \b, from NTFS filesystem (NT) >9 byte =0x0B \b, from NTFS filesystem (NT)
>9 byte =0x0C \b, from QDOS >9 byte =0x0C \b, from QDOS
>9 byte =0x0D \b, from Acorn RISCOS >9 byte =0x0D \b, from Acorn RISCOS
>3 byte &0x10 \b, comment
>3 byte &0x20 \b, encrypted
>4 ledate >0 \b, last modified: %s
>8 byte 2 \b, max compression
>8 byte 4 \b, max speed
# packed data, Huffman (minimum redundancy) codes on a byte-by-byte basis # packed data, Huffman (minimum redundancy) codes on a byte-by-byte basis
0 string \037\036 packed data 0 string \037\036 packed data
@ -191,8 +191,8 @@
# Type: LZMA # Type: LZMA
0 lelong&0xffffff =0x5d 0 lelong&0xffffff =0x5d
!:mime application/x-lzma
>12 leshort 0xff LZMA compressed data, >12 leshort 0xff LZMA compressed data,
!:mime application/x-lzma
>>5 lequad =0xffffffffffffffff streamed >>5 lequad =0xffffffffffffffff streamed
>>5 lequad !0xffffffffffffffff non-streamed, size %lld >>5 lequad !0xffffffffffffffff non-streamed, size %lld
>12 leshort 0 LZMA compressed data, >12 leshort 0 LZMA compressed data,
@ -209,6 +209,15 @@
>5 byte x \b.%d >5 byte x \b.%d
!:mime application/x-lrzip !:mime application/x-lrzip
# http://fastcompression.blogspot.fi/2013/04/lz4-streaming-format-final.html
0 lelong 0x184d2204 LZ4 compressed data (v1.4+)
!:mime application/x-lz4
# Added by osm0sis@xda-developers.com
0 lelong 0x184c2103 LZ4 compressed data (v1.0-v1.3)
!:mime application/x-lz4
0 lelong 0x184c2102 LZ4 compressed data (v0.1-v0.9)
!:mime application/x-lz4
# AFX compressed files (Wolfram Kleff) # AFX compressed files (Wolfram Kleff)
2 string -afx- AFX compressed file data 2 string -afx- AFX compressed file data
@ -238,3 +247,7 @@
>0x4 lelong x \b, version %u >0x4 lelong x \b, version %u
>0x8 lelong x \b, %u entries >0x8 lelong x \b, %u entries
# Snappy framing format
# http://code.google.com/p/snappy/source/browse/trunk/framing_format.txt
0 string \377\006\0\0sNaPpY snappy framed data
!:mime application/x-snappy-framed

View File

@ -1,12 +1,12 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: cups,v 1.2 2012/11/02 21:50:29 christos Exp $ # $File: cups,v 1.3 2014/05/28 19:50:41 christos Exp $
# Cups: file(1) magic for the cups raster file format # Cups: file(1) magic for the cups raster file format
# From: Laurent Martelli <martellilaurent@gmail.com> # From: Laurent Martelli <martellilaurent@gmail.com>
# http://www.cups.org/documentation.php/spec-raster.html # http://www.cups.org/documentation.php/spec-raster.html
# #
0 name cups-be 0 name cups-le
>280 lelong x \b, %d >280 lelong x \b, %d
>284 lelong x \bx%d dpi >284 lelong x \bx%d dpi
>376 lelong x \b, %dx >376 lelong x \b, %dx
@ -44,7 +44,7 @@
>3 string 2 Cups Raster version 2, Big Endian >3 string 2 Cups Raster version 2, Big Endian
>3 string 3 Cups Raster version 3, Big Endian >3 string 3 Cups Raster version 3, Big Endian
!:mime application/vnd.cups-raster !:mime application/vnd.cups-raster
>0 use ^cups-be >0 use ^cups-le
# Cups Raster image format, Little Endian # Cups Raster image format, Little Endian
@ -53,4 +53,4 @@
>0 string 2 Cups Raster version 2, Little Endian >0 string 2 Cups Raster version 2, Little Endian
>0 string 3 Cups Raster version 3, Little Endian >0 string 3 Cups Raster version 3, Little Endian
!:mime application/vnd.cups-raster !:mime application/vnd.cups-raster
>0 use \^cups-be >0 use cups-le

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: database,v 1.35 2013/11/20 00:00:14 christos Exp $ # $File: database,v 1.41 2014/06/03 19:17:27 christos Exp $
# database: file(1) magic for various databases # database: file(1) magic for various databases
# #
# extracted from header/code files by Graeme Wilford (eep2gw@ee.surrey.ac.uk) # extracted from header/code files by Graeme Wilford (eep2gw@ee.surrey.ac.uk)
@ -86,6 +86,30 @@
# Round Robin Database Tool by Tobias Oetiker <oetiker@ee.ethz.ch> # Round Robin Database Tool by Tobias Oetiker <oetiker@ee.ethz.ch>
0 string/b RRD\0 RRDTool DB 0 string/b RRD\0 RRDTool DB
>4 string/b x version %s >4 string/b x version %s
>>10 short !0 16bit aligned
>>>10 bedouble 8.642135e+130 big-endian
>>>>18 short x 32bit long (m68k)
>>10 short 0
>>>12 long !0 32bit aligned
>>>>12 bedouble 8.642135e+130 big-endian
>>>>>20 long 0 64bit long
>>>>>20 long !0 32bit long
>>>>12 ledouble 8.642135e+130 little-endian
>>>>>24 long 0 64bit long
>>>>>24 long !0 32bit long (i386)
>>>>12 string \x43\x2b\x1f\x5b\x2f\x25\xc0\xc7 middle-endian
>>>>>24 short !0 32bit long (arm)
>>8 quad 0 64bit aligned
>>>16 bedouble 8.642135e+130 big-endian
>>>>24 long 0 64bit long (s390x)
>>>>24 long !0 32bit long (hppa/mips/ppc/s390/SPARC)
>>>16 ledouble 8.642135e+130 little-endian
>>>>28 long 0 64bit long (alpha/amd64/ia64)
>>>>28 long !0 32bit long (armel/mipsel)
#---------------------------------------------------------------------- #----------------------------------------------------------------------
# ROOT: file(1) magic for ROOT databases # ROOT: file(1) magic for ROOT databases
# #
@ -146,14 +170,13 @@
>>>>>>>>>>8 uleshort >31 >>>>>>>>>>8 uleshort >31
# skip PIC15736.PCX by test for language driver name or field name # skip PIC15736.PCX by test for language driver name or field name
>>>>>>>>>>>32 ubyte >0 >>>>>>>>>>>32 ubyte >0
!:mime application/x-dbf
#!:mime application/x-dbf; charset=unknown-8bit ?? #!:mime application/x-dbf; charset=unknown-8bit ??
#!:mime application/x-dbase #!:mime application/x-dbase
>>>>>>>>>>>>0 use xbase-type >>>>>>>>>>>>0 use xbase-type
# database file # database file
>>>>>>>>>>>>0 ubyte x \b DBF >>>>>>>>>>>>0 ubyte x \b DBF
>>>>>>>>>>>>4 lelong 0 \b, no records >>>>>>>>>>>>4 lelong 0 \b, no records
>>>>>>>>>>>>4 lelong >0 \b, %ld record >>>>>>>>>>>>4 lelong >0 \b, %d record
# plural s appended # plural s appended
>>>>>>>>>>>>>4 lelong >1 \bs >>>>>>>>>>>>>4 lelong >1 \bs
# http://www.clicketyclick.dk/databases/xbase/format/dbf_check.html#CHECK_DBF # http://www.clicketyclick.dk/databases/xbase/format/dbf_check.html#CHECK_DBF
@ -213,47 +236,69 @@
>>0 ubyte 0x02 FoxBase >>0 ubyte 0x02 FoxBase
# FoxBase+/dBaseIII+, no memo # FoxBase+/dBaseIII+, no memo
>>0 ubyte 0x03 FoxBase+/dBase III >>0 ubyte 0x03 FoxBase+/dBase III
!:mime application/x-dbf
# dBASE IV no memo file # dBASE IV no memo file
>>0 ubyte 0x04 dBase IV >>0 ubyte 0x04 dBase IV
!:mime application/x-dbf
# dBASE V no memo file # dBASE V no memo file
>>0 ubyte 0x05 dBase V >>0 ubyte 0x05 dBase V
!:mime application/x-dbf
>>0 ubyte 0x30 Visual FoxPro >>0 ubyte 0x30 Visual FoxPro
!:mime application/x-dbf
>>0 ubyte 0x31 Visual FoxPro, autoincrement >>0 ubyte 0x31 Visual FoxPro, autoincrement
!:mime application/x-dbf
# Visual FoxPro, with field type Varchar or Varbinary # Visual FoxPro, with field type Varchar or Varbinary
>>0 ubyte 0x32 Visual FoxPro, with field type Varchar >>0 ubyte 0x32 Visual FoxPro, with field type Varchar
!:mime application/x-dbf
# dBASE IV SQL, no memo;dbv memo var size (Flagship) # dBASE IV SQL, no memo;dbv memo var size (Flagship)
>>0 ubyte 0x43 dBase IV, with SQL table >>0 ubyte 0x43 dBase IV, with SQL table
!:mime application/x-dbf
# http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx # http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx
#>>0 ubyte 0x62 dBase IV, with SQL table #>>0 ubyte 0x62 dBase IV, with SQL table
#!:mime application/x-dbf
# dBASE IV, with memo!! # dBASE IV, with memo!!
>>0 ubyte 0x7b dBase IV, with memo >>0 ubyte 0x7b dBase IV, with memo
!:mime application/x-dbf
# http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx # http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx
#>>0 ubyte 0x82 dBase IV, with SQL system #>>0 ubyte 0x82 dBase IV, with SQL system
#!:mime application/x-dbf
# FoxBase+/dBaseIII+ with memo .DBT! # FoxBase+/dBaseIII+ with memo .DBT!
>>0 ubyte 0x83 FoxBase+/dBase III, with memo .DBT >>0 ubyte 0x83 FoxBase+/dBase III, with memo .DBT
!:mime application/x-dbf
# VISUAL OBJECTS (first 1.0 versions) for the Dbase III files (NTX clipper driver); memo file # VISUAL OBJECTS (first 1.0 versions) for the Dbase III files (NTX clipper driver); memo file
>>0 ubyte 0x87 VISUAL OBJECTS, with memo file >>0 ubyte 0x87 VISUAL OBJECTS, with memo file
!:mime application/x-dbf
# http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx # http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx
#>>0 ubyte 0x8A FoxBase+/dBase III, with memo .DBT #>>0 ubyte 0x8A FoxBase+/dBase III, with memo .DBT
#!:mime application/x-dbf
# dBASE IV with memo! # dBASE IV with memo!
>>0 ubyte 0x8B dBase IV, with memo .DBT >>0 ubyte 0x8B dBase IV, with memo .DBT
!:mime application/x-dbf
# dBase IV with SQL Table,no memo? # dBase IV with SQL Table,no memo?
>>0 ubyte 0x8E dBase IV, with SQL table >>0 ubyte 0x8E dBase IV, with SQL table
!:mime application/x-dbf
# .dbv and .dbt memo (Flagship)? # .dbv and .dbt memo (Flagship)?
>>0 ubyte 0xB3 Flagship >>0 ubyte 0xB3 Flagship
# http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx # http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx
#>>0 ubyte 0xCA dBase IV with memo .DBT #>>0 ubyte 0xCA dBase IV with memo .DBT
#!:mime application/x-dbf
# dBASE IV with SQL table, with memo .DBT # dBASE IV with SQL table, with memo .DBT
>>0 ubyte 0xCB dBase IV with SQL table, with memo .DBT >>0 ubyte 0xCB dBase IV with SQL table, with memo .DBT
!:mime application/x-dbf
# HiPer-Six format;Clipper SIX, with SMT memo file # HiPer-Six format;Clipper SIX, with SMT memo file
>>0 ubyte 0xE5 Clipper SIX with memo >>0 ubyte 0xE5 Clipper SIX with memo
!:mime application/x-dbf
# http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx # http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx
#>>0 ubyte 0xF4 dBase IV, with SQL table, with memo #>>0 ubyte 0xF4 dBase IV, with SQL table, with memo
#!:mime application/x-dbf
>>0 ubyte 0xF5 FoxPro with memo >>0 ubyte 0xF5 FoxPro with memo
!:mime application/x-dbf
# http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx # http://msdn.microsoft.com/en-US/library/st4a0s68(v=vs.80).aspx
#>>0 ubyte 0xFA FoxPro 2.x, with memo #>>0 ubyte 0xFA FoxPro 2.x, with memo
# unkown version (should not happen) #!:mime application/x-dbf
# unknown version (should not happen)
>>0 default x xBase >>0 default x xBase
!:mime application/x-dbf
>>>0 ubyte x (0x%x) >>>0 ubyte x (0x%x)
# flags in version byte # flags in version byte
# DBT flag (with dBASE III memo .DBT)!! # DBT flag (with dBASE III memo .DBT)!!
@ -319,22 +364,22 @@
>>16 ubyte 0 >>16 ubyte 0
>>>512 ubelong <0x00000003 FoxPro FPT >>>512 ubelong <0x00000003 FoxPro FPT
# Size of blocks for FoxPro # Size of blocks for FoxPro
>>>>6 ubeshort x \b, blocks size %lu >>>>6 ubeshort x \b, blocks size %u
# Number of next available block for appending data for FoxPro # Number of next available block for appending data for FoxPro
>>>>0 ubelong =0 \b, next free block index %lu >>>>0 ubelong =0 \b, next free block index %u
>>>>0 ubelong !0 \b, next free block index %lu >>>>0 ubelong !0 \b, next free block index %u
>>>512 default x dBase IV DBT >>>512 default x dBase IV DBT
# DBF file name without extention # DBF file name without extension
>>>>8 string >\0 \b of %-.8s.DBF >>>>8 string >\0 \b of %-.8s.DBF
# size of blocks ; not reliable 0x2020204C # size of blocks ; not reliable 0x2020204C
#>>>>4 ulelong =0 \b, blocks size %lu #>>>>4 ulelong =0 \b, blocks size %u
>>>>4 ulelong !0 \b, blocks size %lu >>>>4 ulelong !0 \b, blocks size %u
# Block length found 0 , 512 # Block length found 0 , 512
#>>>>20 uleshort =0 \b, block length %u #>>>>20 uleshort =0 \b, block length %u
>>>>20 uleshort !0 \b, block length %u >>>>20 uleshort !0 \b, block length %u
# Number of next available block for appending data # Number of next available block for appending data
>>>>0 ulelong =0 \b, next free block index %lu >>>>0 ulelong =0 \b, next free block index %u
>>>>0 ulelong !0 \b, next free block index %lu >>>>0 ulelong !0 \b, next free block index %u
>>512 ubelong x >>512 ubelong x
>>>512 ubelong =0xFFFF0800 >>>512 ubelong =0xFFFF0800
>>>>520 string >\0 \b, 1st used item "%s" >>>>520 string >\0 \b, 1st used item "%s"

View File

@ -1,61 +1,69 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: dolby,v 1.6 2012/10/31 13:39:42 christos Exp $ # $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> # ATSC A/53 aka AC-3 aka Dolby Digital <ashitaka@gmx.at>
# from http://www.atsc.org/standards/a_52a.pdf # from http://www.atsc.org/standards/a_52a.pdf
# corrections, additions, etc. are always welcome! # corrections, additions, etc. are always welcome!
# #
# syncword # syncword
0 beshort 0x0b77 ATSC A/52 aka AC-3 aka Dolby Digital stream, 0 beshort 0x0b77 ATSC A/52 aka AC-3 aka Dolby Digital stream,
# Proposed audio/ac3 RFC/4184
!:mime audio/vnd.dolby.dd-raw !:mime audio/vnd.dolby.dd-raw
# fscod # fscod
>4 byte&0xc0 0x00 48 kHz, >4 byte&0xc0 = 0x00 48 kHz,
>4 byte&0xc0 0x40 44.1 kHz, >4 byte&0xc0 = 0x40 44.1 kHz,
>4 byte&0xc0 0x80 32 kHz, >4 byte&0xc0 = 0x80 32 kHz,
# is this one used for 96 kHz? # is this one used for 96 kHz?
>4 byte&0xc0 0xc0 reserved frequency, >4 byte&0xc0 = 0xc0 reserved frequency,
# #
>5 byte&7 = 0 \b, complete main (CM) >5 byte&0x07 = 0x00 \b, complete main (CM)
>5 byte&7 = 1 \b, music and effects (ME) >5 byte&0x07 = 0x01 \b, music and effects (ME)
>5 byte&7 = 2 \b, visually impaired (VI) >5 byte&0x07 = 0x02 \b, visually impaired (VI)
>5 byte&7 = 3 \b, hearing impaired (HI) >5 byte&0x07 = 0x03 \b, hearing impaired (HI)
>5 byte&7 = 4 \b, dialogue (D) >5 byte&0x07 = 0x04 \b, dialogue (D)
>5 byte&7 = 5 \b, commentary (C) >5 byte&0x07 = 0x05 \b, commentary (C)
>5 byte&7 = 6 \b, emergency (E) >5 byte&0x07 = 0x06 \b, emergency (E)
>5 beshort&0x07e0 0x0720 \b, voiceover (VO)
>5 beshort&0x07e0 >0x0720 \b, karaoke
# acmod # acmod
>6 byte&0xe0 0x00 1+1 front, >6 byte&0xe0 = 0x00 1+1 front,
>6 byte&0xe0 0x20 1 front/0 rear, >>6 byte&0x10 = 0x10 LFE on,
>6 byte&0xe0 0x40 2 front/0 rear, >6 byte&0xe0 = 0x20 1 front/0 rear,
>6 byte&0xe0 0x60 3 front/0 rear, >>6 byte&0x10 = 0x10 LFE on,
>6 byte&0xe0 0x80 2 front/1 rear, >6 byte&0xe0 = 0x40 2 front/0 rear,
>6 byte&0xe0 0xa0 3 front/1 rear, # dsurmod (for stereo only)
>6 byte&0xe0 0xc0 2 front/2 rear, >>6 byte&0x18 = 0x00 Dolby Surround not indicated
>6 byte&0xe0 0xe0 3 front/2 rear, >>6 byte&0x18 = 0x08 not Dolby Surround encoded
# lfeon (these may be incorrect) >>6 byte&0x18 = 0x10 Dolby Surround encoded
>7 byte&0x40 0x00 LFE off, >>6 byte&0x18 = 0x18 reserved Dolby Surround mode
>7 byte&0x40 0x40 LFE on, >>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 = 0x00 \b, 32 kbit/s
>4 byte&0x3e = 0x02 \b, 40 kbit/s >4 byte&0x3e = 0x02 \b, 40 kbit/s
>4 byte&0x3e = 0x04 \b, 48 kbit/s >4 byte&0x3e = 0x04 \b, 48 kbit/s
>4 byte&0x3e = 0x06 \b, 56 kbit/s >4 byte&0x3e = 0x06 \b, 56 kbit/s
>4 byte&0x3e = 0x08 \b, 64 kbit/s >4 byte&0x3e = 0x08 \b, 64 kbit/s
>4 byte&0x3e = 0x0a \b, 80 kbit/s >4 byte&0x3e = 0x0a \b, 80 kbit/s
>4 byte&0x3e = 0x0c \b, 96 kbit/s >4 byte&0x3e = 0x0c \b, 96 kbit/s
>4 byte&0x3e = 0x0e \b, 112 kbit/s >4 byte&0x3e = 0x0e \b, 112 kbit/s
>4 byte&0x3e = 0x10 \b, 128 kbit/s >4 byte&0x3e = 0x10 \b, 128 kbit/s
>4 byte&0x3e = 0x12 \b, 160 kbit/s >4 byte&0x3e = 0x12 \b, 160 kbit/s
>4 byte&0x3e = 0x14 \b, 192 kbit/s >4 byte&0x3e = 0x14 \b, 192 kbit/s
>4 byte&0x3e = 0x16 \b, 224 kbit/s >4 byte&0x3e = 0x16 \b, 224 kbit/s
>4 byte&0x3e = 0x18 \b, 256 kbit/s >4 byte&0x3e = 0x18 \b, 256 kbit/s
>4 byte&0x3e = 0x1a \b, 320 kbit/s >4 byte&0x3e = 0x1a \b, 320 kbit/s
>4 byte&0x3e = 0x1c \b, 384 kbit/s >4 byte&0x3e = 0x1c \b, 384 kbit/s
>4 byte&0x3e = 0x1e \b, 448 kbit/s >4 byte&0x3e = 0x1e \b, 448 kbit/s
>4 byte&0x3e = 0x20 \b, 512 kbit/s >4 byte&0x3e = 0x20 \b, 512 kbit/s
>4 byte&0x3e = 0x22 \b, 576 kbit/s >4 byte&0x3e = 0x22 \b, 576 kbit/s
>4 byte&0x3e = 0x24 \b, 640 kbit/s >4 byte&0x3e = 0x24 \b, 640 kbit/s
# dsurmod (these may be incorrect)
>6 beshort&0x0180 0x0000 Dolby Surround not indicated
>6 beshort&0x0180 0x0080 not Dolby Surround encoded
>6 beshort&0x0180 0x0100 Dolby Surround encoded
>6 beshort&0x0180 0x0180 reserved Dolby Surround mode

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: dump,v 1.12 2012/11/01 04:26:40 christos Exp $ # $File: dump,v 1.13 2014/04/30 21:41:02 christos Exp $
# dump: file(1) magic for dump file format--for new and old dump filesystems # dump: file(1) magic for dump file format--for new and old dump filesystems
# #
# We specify both byte orders in order to recognize byte-swapped dumps. # We specify both byte orders in order to recognize byte-swapped dumps.
@ -8,7 +8,7 @@
0 name new-dump-be 0 name new-dump-be
>4 bedate x Previous dump %s, >4 bedate x Previous dump %s,
>8 bedate x This dump %s, >8 bedate x This dump %s,
>12 belong >0 Volume %ld, >12 belong >0 Volume %d,
>692 belong 0 Level zero, type: >692 belong 0 Level zero, type:
>692 belong >0 Level %d, type: >692 belong >0 Level %d, type:
>0 belong 1 tape header, >0 belong 1 tape header,
@ -27,7 +27,7 @@
0 name old-dump-be 0 name old-dump-be
#>4 bedate x Previous dump %s, #>4 bedate x Previous dump %s,
#>8 bedate x This dump %s, #>8 bedate x This dump %s,
>12 belong >0 Volume %ld, >12 belong >0 Volume %d,
>692 belong 0 Level zero, type: >692 belong 0 Level zero, type:
>692 belong >0 Level %d, type: >692 belong >0 Level %d, type:
>0 belong 1 tape header, >0 belong 1 tape header,
@ -46,7 +46,7 @@
0 name ufs2-dump-be 0 name ufs2-dump-be
>896 beqdate x Previous dump %s, >896 beqdate x Previous dump %s,
>904 beqdate x This dump %s, >904 beqdate x This dump %s,
>12 belong >0 Volume %ld, >12 belong >0 Volume %d,
>692 belong 0 Level zero, type: >692 belong 0 Level zero, type:
>692 belong >0 Level %d, type: >692 belong >0 Level %d, type:
>0 belong 1 tape header, >0 belong 1 tape header,
@ -84,7 +84,7 @@
18 leshort 60011 old-fs dump file (16-bit, assuming PDP-11 endianness), 18 leshort 60011 old-fs dump file (16-bit, assuming PDP-11 endianness),
>2 medate x Previous dump %s, >2 medate x Previous dump %s,
>6 medate x This dump %s, >6 medate x This dump %s,
>10 leshort >0 Volume %ld, >10 leshort >0 Volume %d,
>0 leshort 1 tape header. >0 leshort 1 tape header.
>0 leshort 2 beginning of file record. >0 leshort 2 beginning of file record.
>0 leshort 3 map of inodes on tape. >0 leshort 3 map of inodes on tape.

View File

@ -1,46 +1,56 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: dyadic,v 1.5 2010/09/20 18:55:20 rrt Exp $ # $File: dyadic,v 1.6 2014/06/01 19:14:42 christos Exp $
# Dyadic: file(1) magic for Dyalog APL. # Dyadic: file(1) magic for Dyalog APL.
# #
0 byte 0xaa # updated by Joerg Jenderek at Oct 2013
>1 byte <4 Dyalog APL # http://en.wikipedia.org/wiki/Dyalog_APL
>>1 byte 0x00 incomplete workspace # http://www.dyalog.com/
>>1 byte 0x01 component file # .DXV Dyalog APL External Variable
>>1 byte 0x02 external variable # .DIN Dyalog APL Input Table
>>1 byte 0x03 workspace # .DOT Dyalog APL Output Table
>>2 byte x version %d # .DFT Dyalog APL Format File
>>3 byte x .%d 0 ubeshort&0xFF60 0xaa00
# skip biblio.dbt
0 beshort 0xaa03 Dyalog APL >1 byte !4
>2 byte x workspace type %d # real Dyalog APL have non zero version numbers like 7.3 or 13.4
>3 byte x subtype %d >>2 ubeshort >0x0000 Dyalog APL
>7 byte&0x28 0x00 32-bit >>>1 byte 0x00 aplcore
>7 byte&0x28 0x20 64-bit #>>>1 byte 0x00 incomplete workspace
>7 byte&0x0c 0x00 classic # *.DCF Dyalog APL Component File
>7 byte&0x0c 0x04 unicode >>>1 byte 0x01 component file 32-bit non-journaled non-checksummed
>7 byte&0x88 0x00 big-endian #>>>1 byte 0x01 component file
>7 byte&0x88 0x80 little-endian >>>1 byte 0x02 external variable exclusive
#>>>1 byte 0x02 external variable
0 byte 0xaa Dyalog APL # *.DWS Dyalog APL Workspace
>1 byte 0x00 aplcore >>>1 byte 0x03 workspace
>1 byte 0x01 component file 32-bit non-journaled non-checksummed >>>>7 byte&0x28 0x00 32-bit
>1 byte 0x02 external variable exclusive >>>>7 byte&0x28 0x20 64-bit
>1 byte 0x06 external variable shared >>>>7 byte&0x0c 0x00 classic
>1 byte 0x07 session >>>>7 byte&0x0c 0x04 unicode
>1 byte 0x08 mapped file 32-bit >>>>7 byte&0x88 0x00 big-endian
>1 byte 0x09 component file 64-bit non-journaled non-checksummed >>>>7 byte&0x88 0x80 little-endian
>1 byte 0x0a mapped file 64-bit >>>1 byte 0x06 external variable shared
>1 byte 0x0b component file 32-bit level 1 journaled non-checksummed # *.DSE Dyalog APL Session , *.DLF Dyalog APL Session Log File
>1 byte 0x0c component file 64-bit level 1 journaled non-checksummed >>>1 byte 0x07 session
>1 byte 0x0d component file 32-bit level 1 journaled checksummed >>>1 byte 0x08 mapped file 32-bit
>1 byte 0x0e component file 64-bit level 1 journaled checksummed >>>1 byte 0x09 component file 64-bit non-journaled non-checksummed
>1 byte 0x0f component file 32-bit level 2 journaled checksummed >>>1 byte 0x0a mapped file 64-bit
>1 byte 0x10 component file 64-bit level 2 journaled checksummed >>>1 byte 0x0b component file 32-bit level 1 journaled non-checksummed
>1 byte 0x11 component file 32-bit level 3 journaled checksummed >>>1 byte 0x0c component file 64-bit level 1 journaled non-checksummed
>1 byte 0x12 component file 64-bit level 3 journaled checksummed >>>1 byte 0x0d component file 32-bit level 1 journaled checksummed
>1 byte 0x13 component file 32-bit non-journaled checksummed >>>1 byte 0x0e component file 64-bit level 1 journaled checksummed
>1 byte 0x14 component file 64-bit non-journaled checksummed >>>1 byte 0x0f component file 32-bit level 2 journaled checksummed
>1 byte 0x80 DDB >>>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 short 0x6060 Dyalog APL transfer

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: efi,v 1.4 2009/09/19 16:28:09 christos Exp $ # $File: efi,v 1.5 2014/04/30 21:41:02 christos Exp $
# efi: file(1) magic for Universal EFI binaries # efi: file(1) magic for Universal EFI binaries
0 lelong 0x0ef1fab9 0 lelong 0x0ef1fab9
@ -12,4 +12,4 @@
>>&0 lelong 0x01000007 \b, x86_64 >>&0 lelong 0x01000007 \b, x86_64
>>&20 lelong 7 \b, i386 >>&20 lelong 7 \b, i386
>>&20 lelong 0x01000007 \b, x86_64 >>&20 lelong 0x01000007 \b, x86_64
>4 lelong >2 Universal EFI binary with %ld architectures >4 lelong >2 Universal EFI binary with %d architectures

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: encore,v 1.6 2009/09/19 16:28:09 christos Exp $ # $File: encore,v 1.7 2014/04/30 21:41:02 christos Exp $
# encore: file(1) magic for Encore machines # encore: file(1) magic for Encore machines
# #
# XXX - needs to have the byte order specified (NS32K was little-endian, # XXX - needs to have the byte order specified (NS32K was little-endian,
@ -12,11 +12,11 @@
>20 short 0x10b demand-paged executable >20 short 0x10b demand-paged executable
>20 short 0x10f unsupported executable >20 short 0x10f unsupported executable
>12 long >0 not stripped >12 long >0 not stripped
>22 short >0 - version %ld >22 short >0 - version %d
>22 short 0 - >22 short 0 -
#>4 date x stamp %s #>4 date x stamp %s
0 short 0x155 Encore unsupported executable 0 short 0x155 Encore unsupported executable
>12 long >0 not stripped >12 long >0 not stripped
>22 short >0 - version %ld >22 short >0 - version %d
>22 short 0 - >22 short 0 -
#>4 date x stamp %s #>4 date x stamp %s

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: epoc,v 1.8 2012/06/16 14:43:36 christos Exp $ # $File: epoc,v 1.9 2013/12/21 14:28:15 christos Exp $
# EPOC : file(1) magic for EPOC documents [Psion Series 5/Osaris/Geofox 1] # EPOC : file(1) magic for EPOC documents [Psion Series 5/Osaris/Geofox 1]
# Stefan Praszalowicz <hpicollo@worldnet.fr> and Peter Breitenlohner <peb@mppmu.mpg.de> # Stefan Praszalowicz <hpicollo@worldnet.fr> and Peter Breitenlohner <peb@mppmu.mpg.de>
# Useful information for improving this file can be found at: # Useful information for improving this file can be found at:
@ -30,8 +30,8 @@
>4 lelong 0x10000074 OPL application >4 lelong 0x10000074 OPL application
!:mime application/x-epoc-app !:mime application/x-epoc-app
>4 lelong 0x1000008A exported multi-bitmap image >4 lelong 0x1000008A exported multi-bitmap image
>4 lelong 0x1000016D >4 lelong 0x1000016D
>>8 lelong 0x10000088 Comms names >>8 lelong 0x10000087 Comms names
0 lelong 0x10000041 Psion Series 5 ROM multi-bitmap image 0 lelong 0x10000041 Psion Series 5 ROM multi-bitmap image

View File

@ -1,20 +1,35 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: flash,v 1.9 2009/11/08 01:30:01 christos Exp $ # $File: flash,v 1.11 2014/05/02 00:26:49 christos Exp $
# flash: file(1) magic for Macromedia Flash file format # flash: file(1) magic for Macromedia Flash file format
# #
# See # See
# #
# http://www.macromedia.com/software/flash/open/ # 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 string FWS Macromedia Flash data,
>3 byte x version %d 0 name swf-details
>0 string F Macromedia Flash data
!:mime application/x-shockwave-flash !:mime application/x-shockwave-flash
0 string CWS Macromedia Flash data (compressed), >0 string C Macromedia Flash data (compressed)
!:mime application/x-shockwave-flash !:mime application/x-shockwave-flash
>3 byte x version %d >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> # From: Cal Peake <cp@absolutedigital.net>
0 string FLV Macromedia Flash Video 0 string FLV\x01 Macromedia Flash Video
!:mime video/x-flv !:mime video/x-flv
# #

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: fonts,v 1.26 2013/03/09 22:36:00 christos Exp $ # $File: fonts,v 1.27 2014/04/30 21:41:02 christos Exp $
# fonts: file(1) magic for font data # fonts: file(1) magic for font data
# #
0 search/1 FONT ASCII vfont text 0 search/1 FONT ASCII vfont text
@ -96,5 +96,5 @@
0 string wOFF Web Open Font Format 0 string wOFF Web Open Font Format
>4 belong x \b, flavor %d >4 belong x \b, flavor %d
>8 belong x \b, length %d >8 belong x \b, length %d
>20 beshort x \b, version %hd >20 beshort x \b, version %d
>22 beshort x \b.%hd >22 beshort x \b.%d

View File

@ -1,7 +1,7 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: fortran,v 1.7 2012/06/21 01:55:02 christos Exp $ # $File: fortran,v 1.8 2014/06/03 19:01:34 christos Exp $
# FORTRAN source # FORTRAN source
0 regex/100 \^[Cc][\ \t] FORTRAN program 0 regex/100l \^[Cc][\ \t] FORTRAN program
!:mime text/x-fortran !:mime text/x-fortran
!:strength - 5 !:strength - 5

View File

@ -1,19 +1,19 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: games,v 1.13 2012/02/13 22:50:50 christos Exp $ # $File: games,v 1.14 2014/04/30 21:41:02 christos Exp $
# games: file(1) for games # games: file(1) for games
# Fabio Bonelli <fabiobonelli@libero.it> # Fabio Bonelli <fabiobonelli@libero.it>
# Quake II - III data files # Quake II - III data files
0 string IDP2 Quake II 3D Model file, 0 string IDP2 Quake II 3D Model file,
>20 long x %lu skin(s), >20 long x %u skin(s),
>8 long x (%lu x >8 long x (%u x
>12 long x %lu), >12 long x %u),
>40 long x %lu frame(s), >40 long x %u frame(s),
>16 long x Frame size %lu bytes, >16 long x Frame size %u bytes,
>24 long x %lu vertices/frame, >24 long x %u vertices/frame,
>28 long x %lu texture coordinates, >28 long x %u texture coordinates,
>32 long x %lu triangles/frame >32 long x %u triangles/frame
0 string IBSP Quake 0 string IBSP Quake
>4 long 0x26 II Map file (BSP) >4 long 0x26 II Map file (BSP)
@ -146,7 +146,7 @@
0 string MComprHD MAME CHD compressed hard disk image, 0 string MComprHD MAME CHD compressed hard disk image,
>12 belong x version %lu >12 belong x version %u
# doom - submitted by Jon Dowland # doom - submitted by Jon Dowland

View File

@ -1,13 +1,17 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: gimp,v 1.7 2010/09/20 18:55:20 rrt Exp $ # $File: gimp,v 1.9 2014/04/30 21:41:02 christos Exp $
# GIMP Gradient: file(1) magic for the GIMP's gradient data files # GIMP Gradient: file(1) magic for the GIMP's gradient data files (.ggr)
# by Federico Mena <federico@nuclecu.unam.mx> # by Federico Mena <federico@nuclecu.unam.mx>
0 string GIMP\ Gradient GIMP gradient data 0 string/t GIMP\ Gradient GIMP gradient data
# GIMP palette (.gpl)
# From: Markus Heidelberg <markus.heidelberg@web.de>
0 string/t GIMP\ Palette GIMP palette data
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# XCF: file(1) magic for the XCF image format used in the GIMP developed # XCF: file(1) magic for the XCF image format used in the GIMP (.xcf) developed
# by Spencer Kimball and Peter Mattis # by Spencer Kimball and Peter Mattis
# ('Bucky' LaDieu, nega@vt.edu) # ('Bucky' LaDieu, nega@vt.edu)
@ -16,15 +20,15 @@
>9 string file version 0, >9 string file version 0,
>9 string v version >9 string v version
>>10 string >\0 %s, >>10 string >\0 %s,
>14 belong x %lu x >14 belong x %u x
>18 belong x %lu, >18 belong x %u,
>22 belong 0 RGB Color >22 belong 0 RGB Color
>22 belong 1 Greyscale >22 belong 1 Greyscale
>22 belong 2 Indexed Color >22 belong 2 Indexed Color
>22 belong >2 Unknown Image Type. >22 belong >2 Unknown Image Type.
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# XCF: file(1) magic for the patterns used in the GIMP, developed # XCF: file(1) magic for the patterns used in the GIMP (.pat), developed
# by Spencer Kimball and Peter Mattis # by Spencer Kimball and Peter Mattis
# ('Bucky' LaDieu, nega@vt.edu) # ('Bucky' LaDieu, nega@vt.edu)
@ -32,7 +36,7 @@
>24 string x %s >24 string x %s
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# XCF: file(1) magic for the brushes used in the GIMP, developed # XCF: file(1) magic for the brushes used in the GIMP (.gbr), developed
# by Spencer Kimball and Peter Mattis # by Spencer Kimball and Peter Mattis
# ('Bucky' LaDieu, nega@vt.edu) # ('Bucky' LaDieu, nega@vt.edu)

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: gnome,v 1.3 2013/02/05 15:20:47 christos Exp $ # $File: gnome,v 1.5 2014/04/30 21:41:02 christos Exp $
# GNOME related files # GNOME related files
# Contributed by Josh Triplett # Contributed by Josh Triplett
@ -9,9 +9,9 @@
>&0 ubyte 0 \b, major version 0 >&0 ubyte 0 \b, major version 0
>>&0 ubyte 0 \b, minor version 0 >>&0 ubyte 0 \b, minor version 0
>>>&0 ubyte 0 \b, crypto type 0 (AES) >>>&0 ubyte 0 \b, crypto type 0 (AES)
>>>&0 ubyte >0 \b, crypto type %hhu (unknown) >>>&0 ubyte >0 \b, crypto type %u (unknown)
>>>&1 ubyte 0 \b, hash type 0 (MD5) >>>&1 ubyte 0 \b, hash type 0 (MD5)
>>>&1 ubyte >0 \b, hash type %hhu (unknown) >>>&1 ubyte >0 \b, hash type %u (unknown)
>>>&2 ubelong 0xFFFFFFFF \b, name NULL >>>&2 ubelong 0xFFFFFFFF \b, name NULL
>>>&2 ubelong !0xFFFFFFFF >>>&2 ubelong !0xFFFFFFFF
>>>>&-4 ubelong >255 \b, name too long for file's pstring type >>>>&-4 ubelong >255 \b, name too long for file's pstring type

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: gnu,v 1.14 2012/10/03 23:38:12 christos Exp $ # $File: gnu,v 1.15 2014/02/06 14:21:02 christos Exp $
# gnu: file(1) magic for various GNU tools # gnu: file(1) magic for various GNU tools
# #
# GNU nlsutils message catalog file format # GNU nlsutils message catalog file format
@ -52,6 +52,17 @@
>>2 leshort 0x0d04 GPG symmetrically encrypted data (CAMELLIA256 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 # Gnumeric spreadsheet
# This entry is only semi-helpful, as Gnumeric compresses its files, so # This entry is only semi-helpful, as Gnumeric compresses its files, so
# they will ordinarily reported as "compressed", but at least -z helps # they will ordinarily reported as "compressed", but at least -z helps

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: gpt,v 1.1 2013/02/18 18:31:09 christos Exp $ # $File: gpt,v 1.3 2014/04/30 21:41:02 christos Exp $
# #
# GPT Partition table patterns. # GPT Partition table patterns.
# Author: Rogier Goossens (goossens.rogier@gmail.com) # Author: Rogier Goossens (goossens.rogier@gmail.com)
@ -220,7 +220,6 @@
0 name gpt-table 0 name gpt-table
>10 uleshort x \b, version %u >10 uleshort x \b, version %u
>8 uleshort x \b.%u >8 uleshort x \b.%u
# a GUID is just like a UUID, except it's displayed mixed-endian.
>56 ulelong x \b, GUID: %08x >56 ulelong x \b, GUID: %08x
>60 uleshort x \b-%04x >60 uleshort x \b-%04x
>62 uleshort x \b-%04x >62 uleshort x \b-%04x

View File

@ -1,12 +1,12 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: graphviz,v 1.7 2009/09/19 16:28:09 christos Exp $ # $File: graphviz,v 1.8 2014/06/03 19:01:34 christos Exp $
# graphviz: file(1) magic for http://www.graphviz.org/ # graphviz: file(1) magic for http://www.graphviz.org/
# FIXME: These patterns match too generally. For example, the first # FIXME: These patterns match too generally. For example, the first
# line matches a LaTeX file containing the word "graph" (with a { # line matches a LaTeX file containing the word "graph" (with a {
# following later) and the second line matches this file. # following later) and the second line matches this file.
#0 regex/100 [\r\n\t\ ]*graph[\r\n\t\ ]+.*\\{ graphviz graph text #0 regex/100l [\r\n\t\ ]*graph[\r\n\t\ ]+.*\\{ graphviz graph text
#!:mime text/vnd.graphviz #!:mime text/vnd.graphviz
#0 regex/100 [\r\n\t\ ]*digraph[\r\n\t\ ]+.*\\{ graphviz digraph text #0 regex/100l [\r\n\t\ ]*digraph[\r\n\t\ ]+.*\\{ graphviz digraph text
#!:mime text/vnd.graphviz #!:mime text/vnd.graphviz

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: hp,v 1.23 2009/09/19 16:28:09 christos Exp $ # $File: hp,v 1.24 2014/04/30 21:41:02 christos Exp $
# hp: file(1) magic for Hewlett Packard machines (see also "printer") # hp: file(1) magic for Hewlett Packard machines (see also "printer")
# #
# XXX - somebody should figure out whether any byte order needs to be # XXX - somebody should figure out whether any byte order needs to be
@ -41,10 +41,10 @@
#### Old Apollo stuff #### Old Apollo stuff
0 beshort 0627 Apollo m68k COFF executable 0 beshort 0627 Apollo m68k COFF executable
>18 beshort ^040000 not stripped >18 beshort ^040000 not stripped
>22 beshort >0 - version %ld >22 beshort >0 - version %d
0 beshort 0624 apollo a88k COFF executable 0 beshort 0624 apollo a88k COFF executable
>18 beshort ^040000 not stripped >18 beshort ^040000 not stripped
>22 beshort >0 - version %ld >22 beshort >0 - version %d
0 long 01203604016 TML 0123 byte-order format 0 long 01203604016 TML 0123 byte-order format
0 long 01702407010 TML 1032 byte-order format 0 long 01702407010 TML 1032 byte-order format
0 long 01003405017 TML 2301 byte-order format 0 long 01003405017 TML 2301 byte-order format
@ -128,58 +128,58 @@
#### 500 #### 500
0 long 0x02080106 HP s500 relocatable executable 0 long 0x02080106 HP s500 relocatable executable
>16 long >0 - version %ld >16 long >0 - version %d
0 long 0x02080107 HP s500 executable 0 long 0x02080107 HP s500 executable
>16 long >0 - version %ld >16 long >0 - version %d
0 long 0x02080108 HP s500 pure executable 0 long 0x02080108 HP s500 pure executable
>16 long >0 - version %ld >16 long >0 - version %d
#### 200 #### 200
0 belong 0x020c0108 HP s200 pure executable 0 belong 0x020c0108 HP s200 pure executable
>4 beshort >0 - version %ld >4 beshort >0 - version %d
>8 belong &0x80000000 save fp regs >8 belong &0x80000000 save fp regs
>8 belong &0x40000000 dynamically linked >8 belong &0x40000000 dynamically linked
>8 belong &0x20000000 debuggable >8 belong &0x20000000 debuggable
>36 belong >0 not stripped >36 belong >0 not stripped
0 belong 0x020c0107 HP s200 executable 0 belong 0x020c0107 HP s200 executable
>4 beshort >0 - version %ld >4 beshort >0 - version %d
>8 belong &0x80000000 save fp regs >8 belong &0x80000000 save fp regs
>8 belong &0x40000000 dynamically linked >8 belong &0x40000000 dynamically linked
>8 belong &0x20000000 debuggable >8 belong &0x20000000 debuggable
>36 belong >0 not stripped >36 belong >0 not stripped
0 belong 0x020c010b HP s200 demand-load executable 0 belong 0x020c010b HP s200 demand-load executable
>4 beshort >0 - version %ld >4 beshort >0 - version %d
>8 belong &0x80000000 save fp regs >8 belong &0x80000000 save fp regs
>8 belong &0x40000000 dynamically linked >8 belong &0x40000000 dynamically linked
>8 belong &0x20000000 debuggable >8 belong &0x20000000 debuggable
>36 belong >0 not stripped >36 belong >0 not stripped
0 belong 0x020c0106 HP s200 relocatable executable 0 belong 0x020c0106 HP s200 relocatable executable
>4 beshort >0 - version %ld >4 beshort >0 - version %d
>6 beshort >0 - highwater %d >6 beshort >0 - highwater %d
>8 belong &0x80000000 save fp regs >8 belong &0x80000000 save fp regs
>8 belong &0x20000000 debuggable >8 belong &0x20000000 debuggable
>8 belong &0x10000000 PIC >8 belong &0x10000000 PIC
0 belong 0x020a0108 HP s200 (2.x release) pure executable 0 belong 0x020a0108 HP s200 (2.x release) pure executable
>4 beshort >0 - version %ld >4 beshort >0 - version %d
>36 belong >0 not stripped >36 belong >0 not stripped
0 belong 0x020a0107 HP s200 (2.x release) executable 0 belong 0x020a0107 HP s200 (2.x release) executable
>4 beshort >0 - version %ld >4 beshort >0 - version %d
>36 belong >0 not stripped >36 belong >0 not stripped
0 belong 0x020c010e HP s200 shared library 0 belong 0x020c010e HP s200 shared library
>4 beshort >0 - version %ld >4 beshort >0 - version %d
>6 beshort >0 - highwater %d >6 beshort >0 - highwater %d
>36 belong >0 not stripped >36 belong >0 not stripped
0 belong 0x020c010d HP s200 dynamic load library 0 belong 0x020c010d HP s200 dynamic load library
>4 beshort >0 - version %ld >4 beshort >0 - version %d
>6 beshort >0 - highwater %d >6 beshort >0 - highwater %d
>36 belong >0 not stripped >36 belong >0 not stripped
@ -192,7 +192,7 @@
0 long 0x015821a6 HP core file 0 long 0x015821a6 HP core file
0 long 0x4da7eee8 HP-WINDOWS font 0 long 0x4da7eee8 HP-WINDOWS font
>8 byte >0 - version %ld >8 byte >0 - version %d
0 string Bitmapfile HP Bitmapfile 0 string Bitmapfile HP Bitmapfile
0 string IMGfile CIS compimg HP Bitmapfile 0 string IMGfile CIS compimg HP Bitmapfile

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: ibm370,v 1.8 2009/09/19 16:28:09 christos Exp $ # $File: ibm370,v 1.9 2014/04/30 21:41:02 christos Exp $
# ibm370: file(1) magic for IBM 370 and compatibles. # ibm370: file(1) magic for IBM 370 and compatibles.
# #
# "ibm370" said that 0x15d == 0535 was "ibm 370 pure executable". # "ibm370" said that 0x15d == 0535 was "ibm 370 pure executable".
@ -36,13 +36,13 @@
>12 belong >0 not stripped >12 belong >0 not stripped
0 beshort 0531 SVR2 executable (Amdahl-UTS) 0 beshort 0531 SVR2 executable (Amdahl-UTS)
>12 belong >0 not stripped >12 belong >0 not stripped
>24 belong >0 - version %ld >24 belong >0 - version %d
0 beshort 0534 SVR2 pure executable (Amdahl-UTS) 0 beshort 0534 SVR2 pure executable (Amdahl-UTS)
>12 belong >0 not stripped >12 belong >0 not stripped
>24 belong >0 - version %ld >24 belong >0 - version %d
0 beshort 0530 SVR2 pure executable (USS/370) 0 beshort 0530 SVR2 pure executable (USS/370)
>12 belong >0 not stripped >12 belong >0 not stripped
>24 belong >0 - version %ld >24 belong >0 - version %d
0 beshort 0535 SVR2 executable (USS/370) 0 beshort 0535 SVR2 executable (USS/370)
>12 belong >0 not stripped >12 belong >0 not stripped
>24 belong >0 - version %ld >24 belong >0 - version %d

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: images,v 1.86 2013/11/19 23:56:04 christos Exp $ # $File: images,v 1.91 2014/04/30 21:41:02 christos Exp $
# images: file(1) magic for image formats (see also "iff", and "c-lang" for # images: file(1) magic for image formats (see also "iff", and "c-lang" for
# XPM bitmaps) # XPM bitmaps)
# #
@ -18,55 +18,58 @@
# `xv' recognizes only a subset of the following (RGB with pixelsize = 24) # `xv' recognizes only a subset of the following (RGB with pixelsize = 24)
# `tgatoppm' recognizes a superset (Index may be anything) # `tgatoppm' recognizes a superset (Index may be anything)
1 belong&0xfff7ffff 0x01010000 Targa image data - Map 1 belong&0xfff7ffff 0x01010000 Targa image data - Map
!:strength + 2
>2 byte&8 8 - RLE >2 byte&8 8 - RLE
>12 leshort >0 %hd x >12 leshort >0 %d x
>14 leshort >0 %hd >14 leshort >0 %d
1 belong&0xfff7ffff 0x00020000 Targa image data - RGB 1 belong&0xfff7ffff 0x00020000 Targa image data - RGB
!:strength + 2
>2 byte&8 8 - RLE >2 byte&8 8 - RLE
>12 leshort >0 %hd x >12 leshort >0 %d x
>14 leshort >0 %hd >14 leshort >0 %d
1 belong&0xfff7ffff 0x00030000 Targa image data - Mono 1 belong&0xfff7ffff 0x00030000 Targa image data - Mono
!:strength + 2
>2 byte&8 8 - RLE >2 byte&8 8 - RLE
>12 leshort >0 %hd x >12 leshort >0 %d x
>14 leshort >0 %hd >14 leshort >0 %d
# PBMPLUS images # PBMPLUS images
# The next byte following the magic is always whitespace. # The next byte following the magic is always whitespace.
# strength is changed to try these patterns before "x86 boot sector" # strength is changed to try these patterns before "x86 boot sector"
0 search/1 P1 0 search/1 P1
>3 regex =[0-9]*\ [0-9]* Netpbm PBM image text >3 regex =[0-9]{0,50}\ [0-9]{0,50} Netpbm PBM image text
>3 regex =[0-9]+\ \b, size = %sx >3 regex =[0-9]{1,50}\ \b, size = %sx
>>3 regex =\ [0-9]+ \b%s >>3 regex =\ [0-9]{1,50} \b%s
!:strength + 45 !:strength + 45
!:mime image/x-portable-bitmap !:mime image/x-portable-bitmap
0 search/1 P2 0 search/1 P2
>3 regex =[0-9]*\ [0-9]* Netpbm PGM image text >3 regex =[0-9]{0,50}\ [0-9]{0,50} Netpbm PGM image text
>3 regex =[0-9]+\ \b, size = %sx >3 regex =[0-9]{1,50}\ \b, size = %sx
>>3 regex =\ [0-9]+ \b%s >>3 regex =\ [0-9]{1,50} \b%s
!:strength + 45 !:strength + 45
!:mime image/x-portable-greymap !:mime image/x-portable-greymap
0 search/1 P3 0 search/1 P3
>3 regex =[0-9]*\ [0-9]* Netpbm PPM image text >3 regex =[0-9]{0,50}\ [0-9]{0,50} Netpbm PPM image text
>3 regex =[0-9]+\ \b, size = %sx >3 regex =[0-9]{1,50}\ \b, size = %sx
>>3 regex =\ [0-9]+ \b%s >>3 regex =\ [0-9]{1,50} \b%s
!:strength + 45 !:strength + 45
!:mime image/x-portable-pixmap !:mime image/x-portable-pixmap
0 string P4 0 string P4
>3 regex =[0-9]*\ [0-9]* Netpbm PBM "rawbits" image data >3 regex =[0-9]{0,50}\ [0-9]{0,50} Netpbm PBM "rawbits" image data
>3 regex =[0-9]+\ \b, size = %sx >3 regex =[0-9]{1,50}\ \b, size = %sx
>>3 regex =\ [0-9]+ \b%s >>3 regex =\ [0-9]{1,50} \b%s
!:strength + 45 !:strength + 45
!:mime image/x-portable-bitmap !:mime image/x-portable-bitmap
0 string P5 0 string P5
>3 regex =[0-9]*\ [0-9]* Netpbm PGM "rawbits" image data >3 regex =[0-9]{0,50}\ [0-9]{0,50} Netpbm PGM "rawbits" image data
>3 regex =[0-9]+\ \b, size = %sx >3 regex =[0-9]{1,50}\ \b, size = %sx
>>3 regex =\ [0-9]+ \b%s >>3 regex =\ [0-9]{1,50} \b%s
!:strength + 45 !:strength + 45
!:mime image/x-portable-greymap !:mime image/x-portable-greymap
0 string P6 0 string P6
>3 regex =[0-9]*\ [0-9]* Netpbm PPM "rawbits" image data >3 regex =[0-9]{0,50}\ [0-9]{0,50} Netpbm PPM "rawbits" image data
>3 regex =[0-9]+\ \b, size = %sx >3 regex =[0-9]{1,50}\ \b, size = %sx
>>3 regex =\ [0-9]+ \b%s >>3 regex =\ [0-9]{1,50} \b%s
!:strength + 45 !:strength + 45
!:mime image/x-portable-pixmap !:mime image/x-portable-pixmap
0 string P7 Netpbm PAM image file 0 string P7 Netpbm PAM image file
@ -128,8 +131,8 @@
# #
0 string \x89PNG\x0d\x0a\x1a\x0a PNG image data 0 string \x89PNG\x0d\x0a\x1a\x0a PNG image data
!:mime image/png !:mime image/png
>16 belong x \b, %ld x >16 belong x \b, %d x
>20 belong x %ld, >20 belong x %d,
>24 byte x %d-bit >24 byte x %d-bit
>25 byte 0 grayscale, >25 byte 0 grayscale,
>25 byte 2 \b/color RGB, >25 byte 2 \b/color RGB,
@ -164,8 +167,8 @@
!:apple 8BIMGIFf !:apple 8BIMGIFf
>4 string 7a \b, version 8%s, >4 string 7a \b, version 8%s,
>4 string 9a \b, version 8%s, >4 string 9a \b, version 8%s,
>6 leshort >0 %hd x >6 leshort >0 %d x
>8 leshort >0 %hd >8 leshort >0 %d
#>10 byte &0x80 color mapped, #>10 byte &0x80 color mapped,
#>10 byte&0x07 =0x00 2 colors #>10 byte&0x07 =0x00 2 colors
#>10 byte&0x07 =0x01 4 colors #>10 byte&0x07 =0x01 4 colors
@ -483,7 +486,7 @@
>>>>1 ubyte 3 ver. 2.8 image data, without palette >>>>1 ubyte 3 ver. 2.8 image data, without palette
>>>>1 ubyte 4 for Windows image data >>>>1 ubyte 4 for Windows image data
>>>>1 ubyte 5 ver. 3.0 image data >>>>1 ubyte 5 ver. 3.0 image data
>>>>4 uleshort x bounding box [%hd, >>>>4 uleshort x bounding box [%d,
>>>>6 uleshort x %d] - >>>>6 uleshort x %d] -
>>>>8 uleshort x [%d, >>>>8 uleshort x [%d,
>>>>10 uleshort x %d], >>>>10 uleshort x %d],
@ -618,7 +621,7 @@
# Author: Hans-Joachim Baader <hjb@pro-linux.de> # Author: Hans-Joachim Baader <hjb@pro-linux.de>
0 string PaRtImAgE-VoLuMe PartImage 0 string PaRtImAgE-VoLuMe PartImage
>0x0020 string 0.6.1 file version %s >0x0020 string 0.6.1 file version %s
>>0x0060 lelong >-1 volume %ld >>0x0060 lelong >-1 volume %d
#>>0x0064 8 byte identifier #>>0x0064 8 byte identifier
#>>0x007c reserved #>>0x007c reserved
>>0x0200 string >\0 type %s >>0x0200 string >\0 type %s
@ -641,8 +644,8 @@
# Kodak Cineon format for scanned negatives # Kodak Cineon format for scanned negatives
# http://www.kodak.com/US/en/motion/support/dlad/ # http://www.kodak.com/US/en/motion/support/dlad/
0 lelong 0xd75f2a80 Cineon image data 0 lelong 0xd75f2a80 Cineon image data
>200 belong >0 \b, %ld x >200 belong >0 \b, %d x
>204 belong >0 %ld >204 belong >0 %d
# Bio-Rad .PIC is an image format used by microscope control systems # Bio-Rad .PIC is an image format used by microscope control systems
@ -654,10 +657,10 @@
14 leshort <2 14 leshort <2
>62 leshort <2 >62 leshort <2
>>54 leshort 12345 Bio-Rad .PIC Image File >>54 leshort 12345 Bio-Rad .PIC Image File
>>>0 leshort >0 %hd x >>>0 leshort >0 %d x
>>>2 leshort >0 %hd, >>>2 leshort >0 %d,
>>>4 leshort =1 1 image in file >>>4 leshort =1 1 image in file
>>>4 leshort >1 %hd images in file >>>4 leshort >1 %d images in file
# From Jan "Yenya" Kasprzak <kas@fi.muni.cz> # From Jan "Yenya" Kasprzak <kas@fi.muni.cz>
# The description of *.mrw format can be found at # The description of *.mrw format can be found at
@ -823,7 +826,7 @@
0 string/t [BitmapInfo2] Polar Monitor Bitmap text 0 string/t [BitmapInfo2] Polar Monitor Bitmap text
!:mime image/x-polar-monitor-bitmap !:mime image/x-polar-monitor-bitmap
# From: Rick Richardson <rick.richardson@comcast.net> # From: Rick Richardson <rickrich@gmail.com>
0 string GARMIN\ BITMAP\ 01 Garmin Bitmap file 0 string GARMIN\ BITMAP\ 01 Garmin Bitmap file
# Type: Ulead Photo Explorer5 (.pe5) # Type: Ulead Photo Explorer5 (.pe5)

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: intel,v 1.11 2013/02/06 14:18:52 christos Exp $ # $File: intel,v 1.12 2014/04/30 21:41:02 christos Exp $
# intel: file(1) magic for x86 Unix # intel: file(1) magic for x86 Unix
# #
# Various flavors of x86 UNIX executable/object (other than Xenix, which # Various flavors of x86 UNIX executable/object (other than Xenix, which
@ -16,24 +16,24 @@
# #
0 leshort 0502 basic-16 executable 0 leshort 0502 basic-16 executable
>12 lelong >0 not stripped >12 lelong >0 not stripped
#>22 leshort >0 - version %ld #>22 leshort >0 - version %d
0 leshort 0503 basic-16 executable (TV) 0 leshort 0503 basic-16 executable (TV)
>12 lelong >0 not stripped >12 lelong >0 not stripped
#>22 leshort >0 - version %ld #>22 leshort >0 - version %d
0 leshort 0510 x86 executable 0 leshort 0510 x86 executable
>12 lelong >0 not stripped >12 lelong >0 not stripped
0 leshort 0511 x86 executable (TV) 0 leshort 0511 x86 executable (TV)
>12 lelong >0 not stripped >12 lelong >0 not stripped
0 leshort =0512 iAPX 286 executable small model (COFF) 0 leshort =0512 iAPX 286 executable small model (COFF)
>12 lelong >0 not stripped >12 lelong >0 not stripped
#>22 leshort >0 - version %ld #>22 leshort >0 - version %d
0 leshort =0522 iAPX 286 executable large model (COFF) 0 leshort =0522 iAPX 286 executable large model (COFF)
>12 lelong >0 not stripped >12 lelong >0 not stripped
#>22 leshort >0 - version %ld #>22 leshort >0 - version %d
# SGI labeled the next entry as "iAPX 386 executable" --Dan Quinlan # SGI labeled the next entry as "iAPX 386 executable" --Dan Quinlan
0 leshort =0514 80386 COFF executable 0 leshort =0514 80386 COFF executable
>12 lelong >0 not stripped >12 lelong >0 not stripped
>22 leshort >0 - version %ld >22 leshort >0 - version %d
# rom: file(1) magic for BIOS ROM Extensions found in intel machines # rom: file(1) magic for BIOS ROM Extensions found in intel machines
# mapped into memory between 0xC0000 and 0xFFFFF # mapped into memory between 0xC0000 and 0xFFFFF

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: isz,v 1.1 2010/03/27 16:17:09 christos Exp $ # $File: isz,v 1.3 2014/04/30 21:41:02 christos Exp $
# ISO Zipped file format # ISO Zipped file format
# http://www.ezbsystems.com/isz/iszspec.txt # http://www.ezbsystems.com/isz/iszspec.txt
0 string IsZ! ISO Zipped file 0 string IsZ! ISO Zipped file

View File

@ -1,9 +1,9 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: karma,v 1.6 2009/09/19 16:28:10 christos Exp $ # $File: karma,v 1.7 2014/04/30 21:41:02 christos Exp $
# karma: file(1) magic for Karma data files # karma: file(1) magic for Karma data files
# #
# From <rgooch@atnf.csiro.au> # From <rgooch@atnf.csiro.au>
0 string KarmaRHD Version Karma Data Structure Version 0 string KarmaRHD Version Karma Data Structure Version
>16 belong x %lu >16 belong x %u

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: linux,v 1.52 2013/11/19 23:18:15 christos Exp $ # $File: linux,v 1.57 2014/05/20 20:10:17 christos Exp $
# linux: file(1) magic for Linux files # linux: file(1) magic for Linux files
# #
# Values for Linux/i386 binaries, from Daniel Quinlan <quinlan@yggdrasil.com> # Values for Linux/i386 binaries, from Daniel Quinlan <quinlan@yggdrasil.com>
@ -40,6 +40,7 @@
>28 long !0 not stripped >28 long !0 not stripped
# core dump file, from Bill Reynolds <bill@goshawk.lanl.gov> # core dump file, from Bill Reynolds <bill@goshawk.lanl.gov>
216 lelong 0421 Linux/i386 core file 216 lelong 0421 Linux/i386 core file
!:strength / 2
>220 string >\0 of '%s' >220 string >\0 of '%s'
>200 lelong >0 (signal %d) >200 lelong >0 (signal %d)
# #
@ -48,7 +49,10 @@
2 string LILO Linux/i386 LILO boot/chain loader 2 string LILO Linux/i386 LILO boot/chain loader
# #
# Linux make config build file, from Ole Aamot <oka@oka.no> # Linux make config build file, from Ole Aamot <oka@oka.no>
28 string make\ config Linux make config build file # Updated by Ken Sharp
28 string make\ config Linux make config build file (old)
49 search/70 Kernel\ Configuration Linux make config build file
# #
# PSF fonts, from H. Peter Anvin <hpa@yggdrasil.com> # PSF fonts, from H. Peter Anvin <hpa@yggdrasil.com>
# Updated by Adam Buchbinder <adam.buchbinder@gmail.com> # Updated by Adam Buchbinder <adam.buchbinder@gmail.com>
@ -392,3 +396,20 @@
>>0x1042 ubelong x \b-%08x >>0x1042 ubelong x \b-%08x
>>0x1046 ubeshort x \b%04x >>0x1046 ubeshort x \b%04x
# Linux device tree:
# File format description can be found in the Linux kernel sources at
# Documentation/devicetree/booting-without-of.txt
# From Christoph Biedl
0 belong 0xd00dfeed
# structure and strings must be within blob
>&(8.L) byte x
>>&(12.L) byte x
>>>20 belong >1 Device Tree Blob version %d
>>>>4 belong x \b, size=%d
>>>>20 belong >1
>>>>>28 belong x \b, boot CPU=%d
>>>>20 belong >2
>>>>>32 belong x \b, string block size=%d
>>>>20 belong >16
>>>>>36 belong x \b, DT structure block size=%d

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------ #------------------------------------------------------------
# $File: mach,v 1.17 2013/03/07 02:22:52 christos Exp $ # $File: mach,v 1.19 2014/04/30 21:41:02 christos Exp $
# Mach has two magic numbers, 0xcafebabe and 0xfeedface. # Mach has two magic numbers, 0xcafebabe and 0xfeedface.
# Unfortunately the first, cafebabe, is shared with # Unfortunately the first, cafebabe, is shared with
# Java ByteCode, so they are both handled in the file "cafebabe". # Java ByteCode, so they are both handled in the file "cafebabe".
@ -31,7 +31,7 @@
>>>4 belong&0x00ffffff 10 vax8650 >>>4 belong&0x00ffffff 10 vax8650
>>>4 belong&0x00ffffff 11 vax8800 >>>4 belong&0x00ffffff 11 vax8800
>>>4 belong&0x00ffffff 12 uvaxIII >>>4 belong&0x00ffffff 12 uvaxIII
>>>4 belong&0x00ffffff >12 vax subarchitecture=%ld >>>4 belong&0x00ffffff >12 vax subarchitecture=%d
>>0 belong&0x00ffffff 2 romp >>0 belong&0x00ffffff 2 romp
>>0 belong&0x00ffffff 3 architecture=3 >>0 belong&0x00ffffff 3 architecture=3
>>0 belong&0x00ffffff 4 ns32032 >>0 belong&0x00ffffff 4 ns32032
@ -51,40 +51,40 @@
>>>>4 belong&0x00fffff0 0x30 pentium_2_m3 >>>>4 belong&0x00fffff0 0x30 pentium_2_m3
>>>>4 belong&0x00fffff0 0x40 pentium_2_m0x40 >>>>4 belong&0x00fffff0 0x40 pentium_2_m0x40
>>>>4 belong&0x00fffff0 0x50 pentium_2_m5 >>>>4 belong&0x00fffff0 0x50 pentium_2_m5
>>>>4 belong&0x00fffff0 >0x50 pentium_2_m0x%lx >>>>4 belong&0x00fffff0 >0x50 pentium_2_m0x%x
>>>4 belong&0x0000000f 7 celeron >>>4 belong&0x0000000f 7 celeron
>>>>4 belong&0x00fffff0 0x00 \b_m0x%lx >>>>4 belong&0x00fffff0 0x00 \b_m0x%x
>>>>4 belong&0x00fffff0 0x10 \b_m0x%lx >>>>4 belong&0x00fffff0 0x10 \b_m0x%x
>>>>4 belong&0x00fffff0 0x20 \b_m0x%lx >>>>4 belong&0x00fffff0 0x20 \b_m0x%x
>>>>4 belong&0x00fffff0 0x30 \b_m0x%lx >>>>4 belong&0x00fffff0 0x30 \b_m0x%x
>>>>4 belong&0x00fffff0 0x40 \b_m0x%lx >>>>4 belong&0x00fffff0 0x40 \b_m0x%x
>>>>4 belong&0x00fffff0 0x50 \b_m0x%lx >>>>4 belong&0x00fffff0 0x50 \b_m0x%x
>>>>4 belong&0x00fffff0 0x60 >>>>4 belong&0x00fffff0 0x60
>>>>4 belong&0x00fffff0 0x70 \b_mobile >>>>4 belong&0x00fffff0 0x70 \b_mobile
>>>>4 belong&0x00fffff0 >0x70 \b_m0x%lx >>>>4 belong&0x00fffff0 >0x70 \b_m0x%x
>>>4 belong&0x0000000f 8 pentium_3 >>>4 belong&0x0000000f 8 pentium_3
>>>>4 belong&0x00fffff0 0x00 >>>>4 belong&0x00fffff0 0x00
>>>>4 belong&0x00fffff0 0x10 \b_m >>>>4 belong&0x00fffff0 0x10 \b_m
>>>>4 belong&0x00fffff0 0x20 \b_xeon >>>>4 belong&0x00fffff0 0x20 \b_xeon
>>>>4 belong&0x00fffff0 >0x20 \b_m0x%lx >>>>4 belong&0x00fffff0 >0x20 \b_m0x%x
>>>4 belong&0x0000000f 9 pentiumM >>>4 belong&0x0000000f 9 pentiumM
>>>>4 belong&0x00fffff0 0x00 >>>>4 belong&0x00fffff0 0x00
>>>>4 belong&0x00fffff0 >0x00 \b_m0x%lx >>>>4 belong&0x00fffff0 >0x00 \b_m0x%x
>>>4 belong&0x0000000f 10 pentium_4 >>>4 belong&0x0000000f 10 pentium_4
>>>>4 belong&0x00fffff0 0x00 >>>>4 belong&0x00fffff0 0x00
>>>>4 belong&0x00fffff0 0x10 \b_m >>>>4 belong&0x00fffff0 0x10 \b_m
>>>>4 belong&0x00fffff0 >0x10 \b_m0x%lx >>>>4 belong&0x00fffff0 >0x10 \b_m0x%x
>>>4 belong&0x0000000f 11 itanium >>>4 belong&0x0000000f 11 itanium
>>>>4 belong&0x00fffff0 0x00 >>>>4 belong&0x00fffff0 0x00
>>>>4 belong&0x00fffff0 0x10 \b_2 >>>>4 belong&0x00fffff0 0x10 \b_2
>>>>4 belong&0x00fffff0 >0x10 \b_m0x%lx >>>>4 belong&0x00fffff0 >0x10 \b_m0x%x
>>>4 belong&0x0000000f 12 xeon >>>4 belong&0x0000000f 12 xeon
>>>>4 belong&0x00fffff0 0x00 >>>>4 belong&0x00fffff0 0x00
>>>>4 belong&0x00fffff0 0x10 \b_mp >>>>4 belong&0x00fffff0 0x10 \b_mp
>>>>4 belong&0x00fffff0 >0x10 \b_m0x%lx >>>>4 belong&0x00fffff0 >0x10 \b_m0x%x
>>>4 belong&0x0000000f >12 ia32 family=%ld >>>4 belong&0x0000000f >12 ia32 family=%d
>>>>4 belong&0x00fffff0 0x00 >>>>4 belong&0x00fffff0 0x00
>>>>4 belong&0x00fffff0 >0x00 model=%lx >>>>4 belong&0x00fffff0 >0x00 model=%x
>>0 belong&0x00ffffff 8 mips >>0 belong&0x00ffffff 8 mips
>>>4 belong&0x00ffffff 1 R2300 >>>4 belong&0x00ffffff 1 R2300
>>>4 belong&0x00ffffff 2 R2600 >>>4 belong&0x00ffffff 2 R2600
@ -93,35 +93,35 @@
>>>4 belong&0x00ffffff 5 R2000 >>>4 belong&0x00ffffff 5 R2000
>>>4 belong&0x00ffffff 6 R3000a >>>4 belong&0x00ffffff 6 R3000a
>>>4 belong&0x00ffffff 7 R3000 >>>4 belong&0x00ffffff 7 R3000
>>>4 belong&0x00ffffff >7 subarchitecture=%ld >>>4 belong&0x00ffffff >7 subarchitecture=%d
>>0 belong&0x00ffffff 9 ns32532 >>0 belong&0x00ffffff 9 ns32532
>>0 belong&0x00ffffff 10 mc98000 >>0 belong&0x00ffffff 10 mc98000
>>0 belong&0x00ffffff 11 hppa >>0 belong&0x00ffffff 11 hppa
>>>4 belong&0x00ffffff 0 7100 >>>4 belong&0x00ffffff 0 7100
>>>4 belong&0x00ffffff 1 7100LC >>>4 belong&0x00ffffff 1 7100LC
>>>4 belong&0x00ffffff >1 subarchitecture=%ld >>>4 belong&0x00ffffff >1 subarchitecture=%d
>>0 belong&0x00ffffff 12 arm >>0 belong&0x00ffffff 12 arm
>>>4 belong&0x00ffffff 0 >>>4 belong&0x00ffffff 0
>>>4 belong&0x00ffffff 1 subarchitecture=%ld >>>4 belong&0x00ffffff 1 subarchitecture=%d
>>>4 belong&0x00ffffff 2 subarchitecture=%ld >>>4 belong&0x00ffffff 2 subarchitecture=%d
>>>4 belong&0x00ffffff 3 subarchitecture=%ld >>>4 belong&0x00ffffff 3 subarchitecture=%d
>>>4 belong&0x00ffffff 4 subarchitecture=%ld >>>4 belong&0x00ffffff 4 subarchitecture=%d
>>>4 belong&0x00ffffff 5 \b_v4t >>>4 belong&0x00ffffff 5 \b_v4t
>>>4 belong&0x00ffffff 6 \b_v6 >>>4 belong&0x00ffffff 6 \b_v6
>>>4 belong&0x00ffffff 7 \b_v5tej >>>4 belong&0x00ffffff 7 \b_v5tej
>>>4 belong&0x00ffffff 8 \b_xscale >>>4 belong&0x00ffffff 8 \b_xscale
>>>4 belong&0x00ffffff 9 \b_v7 >>>4 belong&0x00ffffff 9 \b_v7
>>>4 belong&0x00ffffff 10 \b_v7f >>>4 belong&0x00ffffff 10 \b_v7f
>>>4 belong&0x00ffffff 11 subarchitecture=%ld >>>4 belong&0x00ffffff 11 subarchitecture=%d
>>>4 belong&0x00ffffff 12 \b_v7k >>>4 belong&0x00ffffff 12 \b_v7k
>>>4 belong&0x00ffffff >12 subarchitecture=%ld >>>4 belong&0x00ffffff >12 subarchitecture=%d
# 13 m88k # 13 m88k
>>0 belong&0x00ffffff 13 >>0 belong&0x00ffffff 13
>>>4 belong&0x00ffffff 0 mc88000 >>>4 belong&0x00ffffff 0 mc88000
>>>4 belong&0x00ffffff 1 mc88100 >>>4 belong&0x00ffffff 1 mc88100
>>>4 belong&0x00ffffff 2 mc88110 >>>4 belong&0x00ffffff 2 mc88110
>>>4 belong&0x00ffffff >2 mc88000 subarchitecture=%ld >>>4 belong&0x00ffffff >2 mc88000 subarchitecture=%d
>>0 belong&0x00ffffff 14 sparc >>0 belong&0x00ffffff 14 SPARC
>>0 belong&0x00ffffff 15 i860g >>0 belong&0x00ffffff 15 i860g
>>0 belong&0x00ffffff 16 alpha >>0 belong&0x00ffffff 16 alpha
>>0 belong&0x00ffffff 17 rs6000 >>0 belong&0x00ffffff 17 rs6000
@ -139,36 +139,36 @@
>>>4 belong&0x00ffffff 10 \b_7400 >>>4 belong&0x00ffffff 10 \b_7400
>>>4 belong&0x00ffffff 11 \b_7450 >>>4 belong&0x00ffffff 11 \b_7450
>>>4 belong&0x00ffffff 100 \b_970 >>>4 belong&0x00ffffff 100 \b_970
>>>4 belong&0x00ffffff >100 subarchitecture=%ld >>>4 belong&0x00ffffff >100 subarchitecture=%d
>>0 belong&0x00ffffff >18 architecture=%ld >>0 belong&0x00ffffff >18 architecture=%d
>0 belong&0x01000000 0x01000000 >0 belong&0x01000000 0x01000000
# #
# 64-bit ABIs. # 64-bit ABIs.
# #
>>0 belong&0x00ffffff 0 64-bit architecture=%ld >>0 belong&0x00ffffff 0 64-bit architecture=%d
>>0 belong&0x00ffffff 1 64-bit architecture=%ld >>0 belong&0x00ffffff 1 64-bit architecture=%d
>>0 belong&0x00ffffff 2 64-bit architecture=%ld >>0 belong&0x00ffffff 2 64-bit architecture=%d
>>0 belong&0x00ffffff 3 64-bit architecture=%ld >>0 belong&0x00ffffff 3 64-bit architecture=%d
>>0 belong&0x00ffffff 4 64-bit architecture=%ld >>0 belong&0x00ffffff 4 64-bit architecture=%d
>>0 belong&0x00ffffff 5 64-bit architecture=%ld >>0 belong&0x00ffffff 5 64-bit architecture=%d
>>0 belong&0x00ffffff 6 64-bit architecture=%ld >>0 belong&0x00ffffff 6 64-bit architecture=%d
>>0 belong&0x00ffffff 7 x86_64 >>0 belong&0x00ffffff 7 x86_64
>>>4 belong&0x00ffffff 0 subarchitecture=%ld >>>4 belong&0x00ffffff 0 subarchitecture=%d
>>>4 belong&0x00ffffff 1 subarchitecture=%ld >>>4 belong&0x00ffffff 1 subarchitecture=%d
>>>4 belong&0x00ffffff 2 subarchitecture=%ld >>>4 belong&0x00ffffff 2 subarchitecture=%d
>>>4 belong&0x00ffffff 3 >>>4 belong&0x00ffffff 3
>>>4 belong&0x00ffffff 4 \b_arch1 >>>4 belong&0x00ffffff 4 \b_arch1
>>>4 belong&0x00ffffff >4 subarchitecture=%ld >>>4 belong&0x00ffffff >4 subarchitecture=%d
>>0 belong&0x00ffffff 8 64-bit architecture=%ld >>0 belong&0x00ffffff 8 64-bit architecture=%d
>>0 belong&0x00ffffff 9 64-bit architecture=%ld >>0 belong&0x00ffffff 9 64-bit architecture=%d
>>0 belong&0x00ffffff 10 64-bit architecture=%ld >>0 belong&0x00ffffff 10 64-bit architecture=%d
>>0 belong&0x00ffffff 11 64-bit architecture=%ld >>0 belong&0x00ffffff 11 64-bit architecture=%d
>>0 belong&0x00ffffff 12 64-bit architecture=%ld >>0 belong&0x00ffffff 12 64-bit architecture=%d
>>0 belong&0x00ffffff 13 64-bit architecture=%ld >>0 belong&0x00ffffff 13 64-bit architecture=%d
>>0 belong&0x00ffffff 14 64-bit architecture=%ld >>0 belong&0x00ffffff 14 64-bit architecture=%d
>>0 belong&0x00ffffff 15 64-bit architecture=%ld >>0 belong&0x00ffffff 15 64-bit architecture=%d
>>0 belong&0x00ffffff 16 64-bit architecture=%ld >>0 belong&0x00ffffff 16 64-bit architecture=%d
>>0 belong&0x00ffffff 17 64-bit architecture=%ld >>0 belong&0x00ffffff 17 64-bit architecture=%d
>>0 belong&0x00ffffff 18 ppc64 >>0 belong&0x00ffffff 18 ppc64
>>>4 belong&0x00ffffff 0 >>>4 belong&0x00ffffff 0
>>>4 belong&0x00ffffff 1 \b_601 >>>4 belong&0x00ffffff 1 \b_601
@ -183,8 +183,8 @@
>>>4 belong&0x00ffffff 10 \b_7400 >>>4 belong&0x00ffffff 10 \b_7400
>>>4 belong&0x00ffffff 11 \b_7450 >>>4 belong&0x00ffffff 11 \b_7450
>>>4 belong&0x00ffffff 100 \b_970 >>>4 belong&0x00ffffff 100 \b_970
>>>4 belong&0x00ffffff >100 subarchitecture=%ld >>>4 belong&0x00ffffff >100 subarchitecture=%d
>>0 belong&0x00ffffff >18 64-bit architecture=%ld >>0 belong&0x00ffffff >18 64-bit architecture=%d
0 name mach-o-be 0 name mach-o-be
@ -202,7 +202,7 @@
>12 belong 10 dSYM companion file >12 belong 10 dSYM companion file
>12 belong 11 kext bundle >12 belong 11 kext bundle
>12 belong >11 >12 belong >11
>>12 belong x filetype=%ld >>12 belong x filetype=%d
# #
0 lelong&0xfffffffe 0xfeedface Mach-O 0 lelong&0xfffffffe 0xfeedface Mach-O

25
external/bsd/file/dist/magic/magdir/map vendored Normal file
View File

@ -0,0 +1,25 @@
#------------------------------------------------------------------------------
# $File: map,v 1.1 2014/06/03 18:22:25 christos Exp $
# map: file(1) magic for Map data
#
# Garmin .FIT files http://pub.ks-and-ks.ne.jp/cycling/edge500_fit.shtml
8 string .FIT FIT Map data
>15 byte 0
>>35 belong x \b, unit id %d
# 20 years after unix epoch
>>39 lelong x \b, serial %u
>>43 ledate/631152000 x \b, %s
>>47 leshort x \b, manufacturer %d
>>47 leshort 1 \b (garmin)
>>49 leshort x \b, product %d
>>53 byte x \b, type %d
>>53 byte 1 \b (Device)
>>53 byte 2 \b (Settings)
>>53 byte 3 \b (Sports/Cycling)
>>53 byte 4 \b (Activity)
>>53 byte 8 \b (Elevations)
>>53 byte 10 \b (Totals)

View File

@ -12,17 +12,17 @@
20 string 45 20 string 45
# leader starts with 5 digits, followed by codes specific to MARC format # leader starts with 5 digits, followed by codes specific to MARC format
>0 regex/1 (^[0-9]{5})[acdnp][^bhlnqsu-z] MARC21 Bibliographic >0 regex/1l (^[0-9]{5})[acdnp][^bhlnqsu-z] MARC21 Bibliographic
!:mime application/marc !:mime application/marc
>0 regex/1 (^[0-9]{5})[acdnosx][z] MARC21 Authority >0 regex/1l (^[0-9]{5})[acdnosx][z] MARC21 Authority
!:mime application/marc !:mime application/marc
>0 regex/1 (^[0-9]{5})[cdn][uvxy] MARC21 Holdings >0 regex/1l (^[0-9]{5})[cdn][uvxy] MARC21 Holdings
!:mime application/marc !:mime application/marc
0 regex/1 (^[0-9]{5})[acdn][w] MARC21 Classification 0 regex/1l (^[0-9]{5})[acdn][w] MARC21 Classification
!:mime application/marc !:mime application/marc
>0 regex/1 (^[0-9]{5})[cdn][q] MARC21 Community >0 regex/1l (^[0-9]{5})[cdn][q] MARC21 Community
!:mime application/marc !:mime application/marc
# leader position 22-23, should be "00" but is it? # leader position 22-23, should be "00" but is it?
>0 regex/1 (^.{21})([^0]{2}) (non-conforming) >0 regex/1l (^.{21})([^0]{2}) (non-conforming)
!:mime application/marc !:mime application/marc

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: mips,v 1.9 2013/01/12 03:09:51 christos Exp $ # $File: mips,v 1.10 2014/04/30 21:41:02 christos Exp $
# mips: file(1) magic for MIPS ECOFF and Ucode, as used in SGI IRIX # mips: file(1) magic for MIPS ECOFF and Ucode, as used in SGI IRIX
# and DEC Ultrix # and DEC Ultrix
# #
@ -10,8 +10,8 @@
>20 beshort 0413 (paged) >20 beshort 0413 (paged)
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>22 byte x - version %ld >22 byte x - version %d
>23 byte x \b.%ld >23 byte x \b.%d
# #
0 beshort 0x0162 MIPSEL-BE ECOFF executable 0 beshort 0x0162 MIPSEL-BE ECOFF executable
>20 beshort 0407 (impure) >20 beshort 0407 (impure)
@ -20,7 +20,7 @@
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>23 byte x - version %d >23 byte x - version %d
>22 byte x \b.%ld >22 byte x \b.%d
# #
0 beshort 0x6001 MIPSEB-LE ECOFF executable 0 beshort 0x6001 MIPSEB-LE ECOFF executable
>20 beshort 03401 (impure) >20 beshort 03401 (impure)
@ -29,7 +29,7 @@
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>23 byte x - version %d >23 byte x - version %d
>22 byte x \b.%ld >22 byte x \b.%d
# #
0 beshort 0x6201 MIPSEL ECOFF executable 0 beshort 0x6201 MIPSEL ECOFF executable
>20 beshort 03401 (impure) >20 beshort 03401 (impure)
@ -37,8 +37,8 @@
>20 beshort 05401 (paged) >20 beshort 05401 (paged)
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>23 byte x - version %ld >23 byte x - version %d
>22 byte x \b.%ld >22 byte x \b.%d
# #
# MIPS 2 additions # MIPS 2 additions
# #
@ -48,8 +48,8 @@
>20 beshort 0413 (paged) >20 beshort 0413 (paged)
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>22 byte x - version %ld >22 byte x - version %d
>23 byte x \b.%ld >23 byte x \b.%d
# #
0 beshort 0x0166 MIPSEL-BE MIPS-II ECOFF executable 0 beshort 0x0166 MIPSEL-BE MIPS-II ECOFF executable
>20 beshort 0407 (impure) >20 beshort 0407 (impure)
@ -57,8 +57,8 @@
>20 beshort 0413 (paged) >20 beshort 0413 (paged)
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>22 byte x - version %ld >22 byte x - version %d
>23 byte x \b.%ld >23 byte x \b.%d
# #
0 beshort 0x6301 MIPSEB-LE MIPS-II ECOFF executable 0 beshort 0x6301 MIPSEB-LE MIPS-II ECOFF executable
>20 beshort 03401 (impure) >20 beshort 03401 (impure)
@ -66,8 +66,8 @@
>20 beshort 05401 (paged) >20 beshort 05401 (paged)
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>23 byte x - version %ld >23 byte x - version %d
>22 byte x \b.%ld >22 byte x \b.%d
# #
0 beshort 0x6601 MIPSEL MIPS-II ECOFF executable 0 beshort 0x6601 MIPSEL MIPS-II ECOFF executable
>20 beshort 03401 (impure) >20 beshort 03401 (impure)
@ -75,8 +75,8 @@
>20 beshort 05401 (paged) >20 beshort 05401 (paged)
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>23 byte x - version %ld >23 byte x - version %d
>22 byte x \b.%ld >22 byte x \b.%d
# #
# MIPS 3 additions # MIPS 3 additions
# #
@ -86,8 +86,8 @@
>20 beshort 0413 (paged) >20 beshort 0413 (paged)
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>22 byte x - version %ld >22 byte x - version %d
>23 byte x \b.%ld >23 byte x \b.%d
# #
0 beshort 0x0142 MIPSEL-BE MIPS-III ECOFF executable 0 beshort 0x0142 MIPSEL-BE MIPS-III ECOFF executable
>20 beshort 0407 (impure) >20 beshort 0407 (impure)
@ -95,8 +95,8 @@
>20 beshort 0413 (paged) >20 beshort 0413 (paged)
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>22 byte x - version %ld >22 byte x - version %d
>23 byte x \b.%ld >23 byte x \b.%d
# #
0 beshort 0x4001 MIPSEB-LE MIPS-III ECOFF executable 0 beshort 0x4001 MIPSEB-LE MIPS-III ECOFF executable
>20 beshort 03401 (impure) >20 beshort 03401 (impure)
@ -104,8 +104,8 @@
>20 beshort 05401 (paged) >20 beshort 05401 (paged)
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>23 byte x - version %ld >23 byte x - version %d
>22 byte x \b.%ld >22 byte x \b.%d
# #
0 beshort 0x4201 MIPSEL MIPS-III ECOFF executable 0 beshort 0x4201 MIPSEL MIPS-III ECOFF executable
>20 beshort 03401 (impure) >20 beshort 03401 (impure)
@ -113,8 +113,8 @@
>20 beshort 05401 (paged) >20 beshort 05401 (paged)
>8 belong >0 not stripped >8 belong >0 not stripped
>8 belong 0 stripped >8 belong 0 stripped
>23 byte x - version %ld >23 byte x - version %d
>22 byte x \b.%ld >22 byte x \b.%d
# #
0 beshort 0x180 MIPSEB Ucode 0 beshort 0x180 MIPSEB Ucode
0 beshort 0x182 MIPSEL-BE Ucode 0 beshort 0x182 MIPSEL-BE Ucode

View File

@ -1,6 +1,6 @@
#----------------------------------------------------------------------------- #-----------------------------------------------------------------------------
# $File: misctools,v 1.13 2013/01/16 13:53:10 christos Exp $ # $File: misctools,v 1.14 2014/03/06 16:08:58 christos Exp $
# misctools: file(1) magic for miscellaneous UNIX tools. # misctools: file(1) magic for miscellaneous UNIX tools.
# #
0 search/1 %%!! X-Post-It-Note text 0 search/1 %%!! X-Post-It-Note text
@ -21,3 +21,8 @@
# From: Daniel Novotny <dnovotny@redhat.com> # From: Daniel Novotny <dnovotny@redhat.com>
0 string MDMP\x93\xA7 MDMP crash report data 0 string MDMP\x93\xA7 MDMP crash report data
# Summary: abook addressbook file
# Submitted by: Mark Schreiber <mark7@alumni.cmu.edu>
0 string #\x20abook\x20addressbook\x20file abook address book
!:mime application/x-abook-addressbook

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: motorola,v 1.10 2009/09/19 16:28:11 christos Exp $ # $File: motorola,v 1.11 2014/04/30 21:41:02 christos Exp $
# motorola: file(1) magic for Motorola 68K and 88K binaries # motorola: file(1) magic for Motorola 68K and 88K binaries
# #
# 68K # 68K
@ -40,27 +40,27 @@
# not larger than 1 MB (which is a lot on ST). # not larger than 1 MB (which is a lot on ST).
# The additional 0x601b distinction I took from Doug Lee's magic. # The additional 0x601b distinction I took from Doug Lee's magic.
0 belong&0xFFFFFFF0 0x601A0000 Atari ST M68K contiguous executable 0 belong&0xFFFFFFF0 0x601A0000 Atari ST M68K contiguous executable
>2 belong x (txt=%ld, >2 belong x (txt=%d,
>6 belong x dat=%ld, >6 belong x dat=%d,
>10 belong x bss=%ld, >10 belong x bss=%d,
>14 belong x sym=%ld) >14 belong x sym=%d)
0 belong&0xFFFFFFF0 0x601B0000 Atari ST M68K non-contig executable 0 belong&0xFFFFFFF0 0x601B0000 Atari ST M68K non-contig executable
>2 belong x (txt=%ld, >2 belong x (txt=%d,
>6 belong x dat=%ld, >6 belong x dat=%d,
>10 belong x bss=%ld, >10 belong x bss=%d,
>14 belong x sym=%ld) >14 belong x sym=%d)
# Atari ST/TT... program format (sent by Wolfram Kleff <kleff@cs.uni-bonn.de>) # Atari ST/TT... program format (sent by Wolfram Kleff <kleff@cs.uni-bonn.de>)
0 beshort 0x601A Atari 68xxx executable, 0 beshort 0x601A Atari 68xxx executable,
>2 belong x text len %lu, >2 belong x text len %u,
>6 belong x data len %lu, >6 belong x data len %u,
>10 belong x BSS len %lu, >10 belong x BSS len %u,
>14 belong x symboltab len %lu, >14 belong x symboltab len %u,
>18 belong 0 >18 belong 0
>22 belong &0x01 fastload flag, >22 belong &0x01 fastload flag,
>22 belong &0x02 may be loaded to alternate RAM, >22 belong &0x02 may be loaded to alternate RAM,
>22 belong &0x04 malloc may be from alternate RAM, >22 belong &0x04 malloc may be from alternate RAM,
>22 belong x flags: 0x%lX, >22 belong x flags: 0x%X,
>26 beshort 0 no relocation tab >26 beshort 0 no relocation tab
>26 beshort !0 + relocation tab >26 beshort !0 + relocation tab
>30 string SFX [Self-Extracting LZH SFX archive] >30 string SFX [Self-Extracting LZH SFX archive]
@ -68,4 +68,4 @@
>44 string ZIP! [Self-Extracting ZIP SFX archive] >44 string ZIP! [Self-Extracting ZIP SFX archive]
0 beshort 0x0064 Atari 68xxx CPX file 0 beshort 0x0064 Atari 68xxx CPX file
>8 beshort x (version %04lx) >8 beshort x (version %04x)

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: msdos,v 1.85 2013/03/09 22:36:00 christos Exp $ # $File: msdos,v 1.100 2014/06/03 19:17:27 christos Exp $
# msdos: file(1) magic for MS-DOS files # msdos: file(1) magic for MS-DOS files
# #
@ -42,9 +42,9 @@
# Many of the compressed formats were extraced from IDARC 1.23 source code. # Many of the compressed formats were extraced from IDARC 1.23 source code.
# #
0 string/b MZ 0 string/b MZ
!:mime application/x-dosexec
# All non-DOS EXE extensions have the relocation table more than 0x40 bytes into the file. # All non-DOS EXE extensions have the relocation table more than 0x40 bytes into the file.
>0x18 leshort <0x40 MS-DOS executable >0x18 leshort <0x40 MS-DOS executable
!:mime application/x-dosexec
# These traditional tests usually work but not always. When test quality support is # These traditional tests usually work but not always. When test quality support is
# implemented these can be turned on. # implemented these can be turned on.
#>>0x18 leshort 0x1c (Borland compiler) #>>0x18 leshort 0x1c (Borland compiler)
@ -56,6 +56,7 @@
# Maybe it's a PE? # Maybe it's a PE?
>>(0x3c.l) string PE\0\0 PE >>(0x3c.l) string PE\0\0 PE
!:mime application/x-dosexec
>>>(0x3c.l+24) leshort 0x010b \b32 executable >>>(0x3c.l+24) leshort 0x010b \b32 executable
>>>(0x3c.l+24) leshort 0x020b \b32+ executable >>>(0x3c.l+24) leshort 0x020b \b32+ executable
>>>(0x3c.l+24) leshort 0x0107 ROM image >>>(0x3c.l+24) leshort 0x0107 ROM image
@ -134,8 +135,10 @@
# Hmm, not a PE but the relocation table is too high for a traditional DOS exe, # Hmm, not a PE but the relocation table is too high for a traditional DOS exe,
# must be one of the unusual subformats. # must be one of the unusual subformats.
>>(0x3c.l) string !PE\0\0 MS-DOS executable >>(0x3c.l) string !PE\0\0 MS-DOS executable
!:mime application/x-dosexec
>>(0x3c.l) string NE \b, NE >>(0x3c.l) string NE \b, NE
!:mime application/x-dosexec
>>>(0x3c.l+0x36) byte 1 for OS/2 1.x >>>(0x3c.l+0x36) byte 1 for OS/2 1.x
>>>(0x3c.l+0x36) byte 2 for MS Windows 3.x >>>(0x3c.l+0x36) byte 2 for MS Windows 3.x
>>>(0x3c.l+0x36) byte 3 for MS-DOS >>>(0x3c.l+0x36) byte 3 for MS-DOS
@ -150,6 +153,7 @@
>>>(0x3c.l+0x70) search/0x80 WinZip(R)\ Self-Extractor \b, ZIP self-extracting archive (WinZip) >>>(0x3c.l+0x70) search/0x80 WinZip(R)\ Self-Extractor \b, ZIP self-extracting archive (WinZip)
>>(0x3c.l) string LX\0\0 \b, LX >>(0x3c.l) string LX\0\0 \b, LX
!:mime application/x-dosexec
>>>(0x3c.l+0x0a) leshort <1 (unknown OS) >>>(0x3c.l+0x0a) leshort <1 (unknown OS)
>>>(0x3c.l+0x0a) leshort 1 for OS/2 >>>(0x3c.l+0x0a) leshort 1 for OS/2
>>>(0x3c.l+0x0a) leshort 2 for MS Windows >>>(0x3c.l+0x0a) leshort 2 for MS Windows
@ -168,8 +172,10 @@
# MS Windows system file, supposedly a collection of LE executables # MS Windows system file, supposedly a collection of LE executables
>>(0x3c.l) string W3 \b, W3 for MS Windows >>(0x3c.l) string W3 \b, W3 for MS Windows
!:mime application/x-dosexec
>>(0x3c.l) string LE\0\0 \b, LE executable >>(0x3c.l) string LE\0\0 \b, LE executable
!:mime application/x-dosexec
>>>(0x3c.l+0x0a) leshort 1 >>>(0x3c.l+0x0a) leshort 1
# some DOS extenders use LE files with OS/2 header # some DOS extenders use LE files with OS/2 header
>>>>0x240 search/0x100 DOS/4G for MS-DOS, DOS4GW DOS extender >>>>0x240 search/0x100 DOS/4G for MS-DOS, DOS4GW DOS extender
@ -196,6 +202,7 @@
# and definitely not NE/LE/LX/PE # and definitely not NE/LE/LX/PE
>>0x3c lelong >0x20000000 >>0x3c lelong >0x20000000
>>>(4.s*512) leshort !0x014c \b, MZ for MS-DOS >>>(4.s*512) leshort !0x014c \b, MZ for MS-DOS
!:mime application/x-dosexec
# header data too small for extended executable # header data too small for extended executable
>2 long !0 >2 long !0
>>0x18 leshort <0x40 >>0x18 leshort <0x40
@ -203,17 +210,19 @@
>>>>&(2.s-514) string !LE >>>>&(2.s-514) string !LE
>>>>>&-2 string !BW \b, MZ for MS-DOS >>>>>&-2 string !BW \b, MZ for MS-DOS
!:mime application/x-dosexec
>>>>&(2.s-514) string LE \b, LE >>>>&(2.s-514) string LE \b, LE
>>>>>0x240 search/0x100 DOS/4G for MS-DOS, DOS4GW DOS extender >>>>>0x240 search/0x100 DOS/4G for MS-DOS, DOS4GW DOS extender
# educated guess since indirection is still not capable enough for complex offset # educated guess since indirection is still not capable enough for complex offset
# calculations (next embedded executable would be at &(&2*512+&0-2) # calculations (next embedded executable would be at &(&2*512+&0-2)
# I suspect there are only LE executables in these multi-exe files # I suspect there are only LE executables in these multi-exe files
>>>>&(2.s-514) string BW >>>>&(2.s-514) string BW
>>>>>0x240 search/0x100 DOS/4G ,\b LE for MS-DOS, DOS4GW DOS extender (embedded) >>>>>0x240 search/0x100 DOS/4G \b, LE for MS-DOS, DOS4GW DOS extender (embedded)
>>>>>0x240 search/0x100 !DOS/4G ,\b BW collection for MS-DOS >>>>>0x240 search/0x100 !DOS/4G \b, BW collection for MS-DOS
# This sequence skips to the first COFF segment, usually .text # This sequence skips to the first COFF segment, usually .text
>(4.s*512) leshort 0x014c \b, COFF >(4.s*512) leshort 0x014c \b, COFF
!:mime application/x-dosexec
>>(8.s*16) string go32stub for MS-DOS, DJGPP go32 DOS extender >>(8.s*16) string go32stub for MS-DOS, DJGPP go32 DOS extender
>>(8.s*16) string emx >>(8.s*16) string emx
>>>&1 string x for DOS, Win or OS/2, emx %s >>>&1 string x for DOS, Win or OS/2, emx %s
@ -373,7 +382,7 @@
# they have their real name at offset 22 # they have their real name at offset 22
>>>>>22 string >\0 \b%-.5s >>>>>22 string >\0 \b%-.5s
>4 uleshort&0x8000 0x0000 >4 uleshort&0x8000 0x0000
# 32 bit sector adressing ( > 32 MB) for block devices # 32 bit sector addressing ( > 32 MB) for block devices
>>4 uleshort&0x0002 0x0002 \b,32-bit sector- >>4 uleshort&0x0002 0x0002 \b,32-bit sector-
# support by driver functions 13h, 17h, 18h # support by driver functions 13h, 17h, 18h
>4 uleshort&0x0040 0x0040 \b,IOCTL- >4 uleshort&0x0040 0x0040 \b,IOCTL-
@ -578,16 +587,48 @@
#ico files #ico files
0 string/b \102\101\050\000\000\000\056\000\000\000\000\000\000\000 Icon for MS Windows 0 string/b \102\101\050\000\000\000\056\000\000\000\000\000\000\000 Icon for MS Windows
# Windows icons (Ian Springer <ips@fpk.hp.com>) # Windows icons
0 string/b \000\000\001\000 MS Windows icon resource 0 name ico-dir
!:mime image/x-icon # not entirely accurate, the number of icons is part of the header
>4 byte 1 - 1 icon >0 byte 1 - 1 icon
>4 byte >1 - %d icons >0 ubyte >1 - %d icons
>>6 byte >0 \b, %dx >2 byte 0 \b, 256x
>>>7 byte >0 \b%d >2 byte !0 \b, %dx
>>8 byte 0 \b, 256-colors >3 byte 0 \b256
>>8 byte >0 \b, %d-colors >3 byte !0 \b%d
>4 ubyte !0 \b, %d colors
0 belong 0x00000100
>9 byte 0
>>0 byte x MS Windows icon resource
!:mime image/x-icon
>>4 use ico-dir
>9 ubyte 0xff
>>0 byte x MS Windows icon resource
!:mime image/x-icon
>>4 use ico-dir
# Windows non-animated cursors
0 name cur-dir
# not entirely accurate, the number of icons is part of the header
>0 byte 1 - 1 icon
>0 ubyte >1 - %d icons
>2 byte 0 \b, 256x
>2 byte !0 \b, %dx
>3 byte 0 \b256
>3 byte !0 \b%d
>6 uleshort x \b, hotspot @%dx
>8 uleshort x \b%d
0 belong 0x00000200
>9 byte 0
>>0 byte x MS Windows cursor resource
!:mime image/x-cur
>>4 use cur-dir
>9 ubyte 0xff
>>0 byte x MS Windows cursor resource
!:mime image/x-cur
>>4 use cur-dir
# .chr files # .chr files
0 string/b PK\010\010BGI Borland font 0 string/b PK\010\010BGI Borland font
@ -645,6 +686,12 @@
0 lelong 0x08086b70 TurboC BGI file 0 lelong 0x08086b70 TurboC BGI file
0 lelong 0x08084b50 TurboC Font file 0 lelong 0x08084b50 TurboC Font file
# Debian#712046: The magic below identifies "Delphi compiled form data".
# An additional source of information is available at:
# http://www.woodmann.com/fravia/dafix_t1.htm
0 string TPF0
>4 pstring >\0 Delphi compiled form '%s'
# tests for DBase files moved, updated and merged to database # tests for DBase files moved, updated and merged to database
0 string PMCC Windows 3.x .GRP file 0 string PMCC Windows 3.x .GRP file
@ -702,6 +749,19 @@
0 leshort 0x223e9f78 TNEF 0 leshort 0x223e9f78 TNEF
!:mime application/vnd.ms-tnef !:mime application/vnd.ms-tnef
# Norton Guide (.NG , .HLP) files added by Joerg Jenderek from source NG2HTML.C
# of http://www.davep.org/norton-guides/ng2h-105.tgz
# http://en.wikipedia.org/wiki/Norton_Guides
0 string NG\0\001
# only value 0x100 found at offset 2
>2 ulelong 0x00000100 Norton Guide
# Title[40]
>>8 string >\0 "%-.40s"
#>>6 uleshort x \b, MenuCount=%u
# szCredits[5][66]
>>48 string >\0 \b, %-.66s
>>114 string >\0 %-.66s
# 4DOS help (.HLP) files added by Joerg Jenderek from source TPHELP.PAS # 4DOS help (.HLP) files added by Joerg Jenderek from source TPHELP.PAS
# of http://www.4dos.info/ # of http://www.4dos.info/
# pointer,HelpID[8]=4DHnnnmm # pointer,HelpID[8]=4DHnnnmm
@ -756,90 +816,6 @@
>40 string \ EMF Windows Enhanced Metafile (EMF) image data >40 string \ EMF Windows Enhanced Metafile (EMF) image data
>>44 ulelong x version 0x%x >>44 ulelong x version 0x%x
# From: Alex Beregszaszi <alex@fsn.hu>
0 string/b COWD VMWare3
>4 byte 3 disk image
>>32 lelong x (%d/
>>36 lelong x \b%d/
>>40 lelong x \b%d)
>4 byte 2 undoable disk image
>>32 string >\0 (%s)
0 string/b VMDK VMware4 disk image
0 string/b KDMV VMware4 disk image
#--------------------------------------------------------------------
# Qemu Emulator Images
# Lines written by Friedrich Schwittay (f.schwittay@yousable.de)
# Updated by Adam Buchbinder (adam.buchbinder@gmail.com)
# Made by reading sources, reading documentation, and doing trial and error
# on existing QCOW files
0 string/b QFI\xFB QEMU QCOW Image
# Uncomment the following line to display Magic (only used for debugging
# this magic number)
#>0 string/b x , Magic: %s
# There are currently 2 Versions: "1" and "2".
# http://www.gnome.org/~markmc/qcow-image-format-version-1.html
>4 belong 1 (v1)
# Using the existence of the Backing File Offset to determine whether
# to read Backing File Information
>>12 belong >0 \b, has backing file (
# Note that this isn't a null-terminated string; the length is actually
# (16.L). Assuming a null-terminated string happens to work usually, but it
# may spew junk until it reaches a \0 in some cases.
>>>(12.L) string >\0 \bpath %s
# Modification time of the Backing File
# Really useful if you want to know if your backing
# file is still usable together with this image
>>>>20 bedate >0 \b, mtime %s)
>>>>20 default x \b)
# Size is stored in bytes in a big-endian u64.
>>24 bequad x \b, %lld bytes
# 1 for AES encryption, 0 for none.
>>36 belong 1 \b, AES-encrypted
# http://www.gnome.org/~markmc/qcow-image-format.html
>4 belong 2 (v2)
# Using the existence of the Backing File Offset to determine whether
# to read Backing File Information
>>8 bequad >0 \b, has backing file
# Note that this isn't a null-terminated string; the length is actually
# (16.L). Assuming a null-terminated string happens to work usually, but it
# may spew junk until it reaches a \0 in some cases. Also, since there's no
# .Q modifier, we just use the bottom four bytes as an offset. Note that if
# the file is over 4G, and the backing file path is stored after the first 4G,
# the wrong filename will be printed. (This should be (8.Q), when that syntax
# is introduced.)
>>>(12.L) string >\0 (path %s)
>>24 bequad x \b, %lld bytes
>>32 belong 1 \b, AES-encrypted
>4 default x (unknown version)
0 string/b QEVM QEMU suspend to disk image
# QEMU QED Image
# http://wiki.qemu.org/Features/QED/Specification
0 string/b QED\0 QEMU QED Image
# VDI Image
64 string/b \x7f\x10\xda\xbe VDI Image
>68 string/b \x01\x00\x01\x00 version 1.1
>0 string >\0 (%s)
>368 lequad x \b, %lld bytes
0 string/b Bochs\ Virtual\ HD\ Image Bochs disk image,
>32 string x type %s,
>48 string x subtype %s
0 lelong 0x02468ace Bochs Sparse disk image
# from http://filext.com by Derek M Jones <derek@knosof.co.uk> # from http://filext.com by Derek M Jones <derek@knosof.co.uk>
# False positive with PPT (also currently this string is too long) # False positive with PPT (also currently this string is too long)
#0 string/b \xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3E\x00\x03\x00\xFE\xFF\x09\x00\x06 Microsoft Installer #0 string/b \xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3E\x00\x03\x00\xFE\xFF\x09\x00\x06 Microsoft Installer
@ -873,8 +849,8 @@
# URL: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/directx9_c/directx/graphics/reference/DDSFileReference/ddsfileformat.asp # URL: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/directx9_c/directx/graphics/reference/DDSFileReference/ddsfileformat.asp
# From: Morten Hustveit <morten@debian.org> # From: Morten Hustveit <morten@debian.org>
0 string/b DDS\040\174\000\000\000 Microsoft DirectDraw Surface (DDS), 0 string/b DDS\040\174\000\000\000 Microsoft DirectDraw Surface (DDS),
>16 lelong >0 %hd x >16 lelong >0 %d x
>12 lelong >0 %hd, >12 lelong >0 %d,
>84 string x %.4s >84 string x %.4s
# Type: Microsoft Document Imaging Format (.mdi) # Type: Microsoft Document Imaging Format (.mdi)

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: msooxml,v 1.3 2013/09/12 16:08:07 christos Exp $ # $File: msooxml,v 1.4 2014/01/06 18:16:24 rrt Exp $
# msooxml: file(1) magic for Microsoft Office XML # msooxml: file(1) magic for Microsoft Office XML
# From: Ralf Brown <ralf.brown@gmail.com> # From: Ralf Brown <ralf.brown@gmail.com>
@ -16,26 +16,21 @@
0 string PK\003\004 0 string PK\003\004
!:strength +10 !:strength +10
# make sure the first file is correct # make sure the first file is correct
>0x1E string [Content_Types].xml >0x1E regex \[Content_Types\]\.xml|_rels/\.rels
>>0 use msooxml
>0xE84 string [Content_Types].xml
>>0 use msooxml
0 name msooxml
# skip to the second local file header # skip to the second local file header
# since some documents include a 520-byte extra field following the file # since some documents include a 520-byte extra field following the file
# header, we need to scan for the next header # header, we need to scan for the next header
>(18.l+49) search/2000 PK\003\004 >>(18.l+49) search/2000 PK\003\004
# now skip to the *third* local file header; again, we need to scan due to a # now skip to the *third* local file header; again, we need to scan due to a
# 520-byte extra field following the file header # 520-byte extra field following the file header
>>&26 search/1000 PK\003\004 >>>&26 search/1000 PK\003\004
# and check the subdirectory name to determine which type of OOXML # and check the subdirectory name to determine which type of OOXML
# file we have. Correct the mimetype with the registered ones: # file we have. Correct the mimetype with the registered ones:
# http://technet.microsoft.com/en-us/library/cc179224.aspx # http://technet.microsoft.com/en-us/library/cc179224.aspx
>>>&26 string word/ Microsoft Word 2007+ >>>>&26 string word/ Microsoft Word 2007+
!:mime application/vnd.openxmlformats-officedocument.wordprocessingml.document !:mime application/vnd.openxmlformats-officedocument.wordprocessingml.document
>>>&26 string ppt/ Microsoft PowerPoint 2007+ >>>>&26 string ppt/ Microsoft PowerPoint 2007+
!:mime application/vnd.openxmlformats-officedocument.presentationml.presentation !:mime application/vnd.openxmlformats-officedocument.presentationml.presentation
>>>&26 string xl/ Microsoft Excel 2007+ >>>>&26 string xl/ Microsoft Excel 2007+
!:mime application/vnd.openxmlformats-officedocument.spreadsheetml.sheet !:mime application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
>>>&26 default x Microsoft OOXML >>>>&26 default x Microsoft OOXML

View File

@ -2,7 +2,7 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# msx: file(1) magic for the MSX Home Computer # msx: file(1) magic for the MSX Home Computer
# v1.1 # v1.1
# Fábio R. Schmidlin <sd-snatcher@users.sourceforge.net> # Fabio R. Schmidlin <sd-snatcher@users.sourceforge.net>
############## MSX Music file formats ############## ############## MSX Music file formats ##############

View File

@ -1,6 +1,6 @@
#----------------------------------------------------------------------------- #-----------------------------------------------------------------------------
# $File: natinst,v 1.5 2013/02/06 14:18:52 christos Exp $ # $File: natinst,v 1.6 2014/06/03 19:17:27 christos Exp $
# natinst: file(1) magic for National Instruments Code Files # natinst: file(1) magic for National Instruments Code Files
# #
@ -12,7 +12,7 @@
0 string RSRC National Instruments, 0 string RSRC National Instruments,
# Check if it's a LabVIEW File # Check if it's a LabVIEW File
>8 string LV LabVIEW File, >8 string LV LabVIEW File,
# Check wich kind of file is # Check which kind of file it is
>>10 string SB Code Resource File, data >>10 string SB Code Resource File, data
>>10 string IN Virtual Instrument Program, data >>10 string IN Virtual Instrument Program, data
>>10 string AR VI Library, data >>10 string AR VI Library, data

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: ncr,v 1.7 2009/09/19 16:28:11 christos Exp $ # $File: ncr,v 1.8 2014/04/30 21:41:02 christos Exp $
# ncr: file(1) magic for NCR Tower objects # ncr: file(1) magic for NCR Tower objects
# #
# contributed by # contributed by
@ -11,27 +11,27 @@
>12 belong >0 not stripped >12 belong >0 not stripped
>20 beshort 0407 executable >20 beshort 0407 executable
>20 beshort 0410 pure executable >20 beshort 0410 pure executable
>22 beshort >0 - version %ld >22 beshort >0 - version %d
0 beshort 000615 Tower/XP rel 2 object 0 beshort 000615 Tower/XP rel 2 object
>12 belong >0 not stripped >12 belong >0 not stripped
>20 beshort 0407 executable >20 beshort 0407 executable
>20 beshort 0410 pure executable >20 beshort 0410 pure executable
>22 beshort >0 - version %ld >22 beshort >0 - version %d
0 beshort 000620 Tower/XP rel 3 object 0 beshort 000620 Tower/XP rel 3 object
>12 belong >0 not stripped >12 belong >0 not stripped
>20 beshort 0407 executable >20 beshort 0407 executable
>20 beshort 0410 pure executable >20 beshort 0410 pure executable
>22 beshort >0 - version %ld >22 beshort >0 - version %d
0 beshort 000625 Tower/XP rel 3 object 0 beshort 000625 Tower/XP rel 3 object
>12 belong >0 not stripped >12 belong >0 not stripped
>20 beshort 0407 executable >20 beshort 0407 executable
>20 beshort 0410 pure executable >20 beshort 0410 pure executable
>22 beshort >0 - version %ld >22 beshort >0 - version %d
0 beshort 000630 Tower32/600/400 68020 object 0 beshort 000630 Tower32/600/400 68020 object
>12 belong >0 not stripped >12 belong >0 not stripped
>20 beshort 0407 executable >20 beshort 0407 executable
>20 beshort 0410 pure executable >20 beshort 0410 pure executable
>22 beshort >0 - version %ld >22 beshort >0 - version %d
0 beshort 000640 Tower32/800 68020 0 beshort 000640 Tower32/800 68020
>18 beshort &020000 w/68881 object >18 beshort &020000 w/68881 object
>18 beshort &040000 compatible object >18 beshort &040000 compatible object
@ -39,11 +39,11 @@
>20 beshort 0407 executable >20 beshort 0407 executable
>20 beshort 0413 pure executable >20 beshort 0413 pure executable
>12 belong >0 not stripped >12 belong >0 not stripped
>22 beshort >0 - version %ld >22 beshort >0 - version %d
0 beshort 000645 Tower32/800 68010 0 beshort 000645 Tower32/800 68010
>18 beshort &040000 compatible object >18 beshort &040000 compatible object
>18 beshort &060000 object >18 beshort &060000 object
>20 beshort 0407 executable >20 beshort 0407 executable
>20 beshort 0413 pure executable >20 beshort 0413 pure executable
>12 belong >0 not stripped >12 belong >0 not stripped
>22 beshort >0 - version %ld >22 beshort >0 - version %d

View File

@ -0,0 +1,12 @@
#------------------------------------------------------------
# $File: neko,v 1.1 2009/11/10 20:36:10 christos Exp $
# From: Mikhail Gusarov <dottedmag@dottedmag.net>
# NekoVM (http://nekovm.org/) bytecode
0 string NEKO NekoVM bytecode
>4 lelong x (%d global symbols,
>8 lelong x %d global fields,
>12 lelong x %d bytecode ops)
!:mime application/x-nekovm-bytecode

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: netbsd,v 1.20 2013/01/09 22:37:24 christos Exp $ # $File: netbsd,v 1.21 2014/03/29 15:40:34 christos Exp $
# netbsd: file(1) magic for NetBSD objects # netbsd: file(1) magic for NetBSD objects
# #
# All new-style magic numbers are in network byte order. # All new-style magic numbers are in network byte order.
@ -100,25 +100,25 @@
0 belong&0377777777 045200507 a.out NetBSD/powerpc core 0 belong&0377777777 045200507 a.out NetBSD/powerpc core
>12 string >\0 from '%s' >12 string >\0 from '%s'
0 belong&0377777777 042400413 a.out NetBSD/sparc demand paged 0 belong&0377777777 042400413 a.out NetBSD/SPARC demand paged
>0 byte &0x80 >0 byte &0x80
>>20 belong <8192 shared library >>20 belong <8192 shared library
>>20 belong =8192 dynamically linked executable >>20 belong =8192 dynamically linked executable
>>20 belong >8192 dynamically linked executable >>20 belong >8192 dynamically linked executable
>0 byte ^0x80 executable >0 byte ^0x80 executable
>16 belong >0 not stripped >16 belong >0 not stripped
0 belong&0377777777 042400410 a.out NetBSD/sparc pure 0 belong&0377777777 042400410 a.out NetBSD/SPARC pure
>0 byte &0x80 dynamically linked executable >0 byte &0x80 dynamically linked executable
>0 byte ^0x80 executable >0 byte ^0x80 executable
>16 belong >0 not stripped >16 belong >0 not stripped
0 belong&0377777777 042400407 a.out NetBSD/sparc 0 belong&0377777777 042400407 a.out NetBSD/SPARC
>0 byte &0x80 dynamically linked executable >0 byte &0x80 dynamically linked executable
>0 byte ^0x80 >0 byte ^0x80
>>0 byte &0x40 position independent >>0 byte &0x40 position independent
>>20 belong !0 executable >>20 belong !0 executable
>>20 belong =0 object file >>20 belong =0 object file
>16 belong >0 not stripped >16 belong >0 not stripped
0 belong&0377777777 042400507 a.out NetBSD/sparc core 0 belong&0377777777 042400507 a.out NetBSD/SPARC core
>12 string >\0 from '%s' >12 string >\0 from '%s'
>32 belong !0 (signal %d) >32 belong !0 (signal %d)
@ -254,7 +254,7 @@
>0 belong&0x03ff0000 0x00870000 \b, m68k BSD (8K pages) >0 belong&0x03ff0000 0x00870000 \b, m68k BSD (8K pages)
>0 belong&0x03ff0000 0x00880000 \b, m68k BSD (4K pages) >0 belong&0x03ff0000 0x00880000 \b, m68k BSD (4K pages)
>0 belong&0x03ff0000 0x00890000 \b, ns32532 BSD >0 belong&0x03ff0000 0x00890000 \b, ns32532 BSD
>0 belong&0x03ff0000 0x008a0000 \b, sparc/32 BSD >0 belong&0x03ff0000 0x008a0000 \b, SPARC/32 BSD
>0 belong&0x03ff0000 0x008b0000 \b, pmax BSD >0 belong&0x03ff0000 0x008b0000 \b, pmax BSD
>0 belong&0x03ff0000 0x008c0000 \b, vax BSD (1K pages) >0 belong&0x03ff0000 0x008c0000 \b, vax BSD (1K pages)
>0 belong&0x03ff0000 0x008d0000 \b, alpha BSD >0 belong&0x03ff0000 0x008d0000 \b, alpha BSD
@ -268,7 +268,7 @@
>0 belong&0x03ff0000 0x00950000 \b, mips2 BSD >0 belong&0x03ff0000 0x00950000 \b, mips2 BSD
>0 belong&0x03ff0000 0x00960000 \b, parisc BSD >0 belong&0x03ff0000 0x00960000 \b, parisc BSD
>0 belong&0x03ff0000 0x00970000 \b, sh5/64 BSD >0 belong&0x03ff0000 0x00970000 \b, sh5/64 BSD
>0 belong&0x03ff0000 0x00980000 \b, sparc/64 BSD >0 belong&0x03ff0000 0x00980000 \b, SPARC/64 BSD
>0 belong&0x03ff0000 0x00990000 \b, amd64 BSD >0 belong&0x03ff0000 0x00990000 \b, amd64 BSD
>0 belong&0x03ff0000 0x009a0000 \b, hp200 (68010) BSD >0 belong&0x03ff0000 0x009a0000 \b, hp200 (68010) BSD
>0 belong&0x03ff0000 0x009b0000 \b, hp300 (68020+68881) BSD >0 belong&0x03ff0000 0x009b0000 \b, hp300 (68020+68881) BSD

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: nitpicker,v 1.4 2009/09/19 16:28:11 christos Exp $ # $File: nitpicker,v 1.6 2014/04/30 21:41:02 christos Exp $
# nitpicker: file(1) magic for Flowfiles. # nitpicker: file(1) magic for Flowfiles.
# From: Christian Jachmann <C.Jachmann@gmx.net> http://www.nitpicker.de # From: Christian Jachmann <C.Jachmann@gmx.net> http://www.nitpicker.de
0 string NPFF NItpicker Flow File 0 string NPFF NItpicker Flow File

View File

@ -1,9 +1,9 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: oasis,v 1.1 2011/03/15 02:09:38 christos Exp $ # $File: oasis,v 1.2 2014/06/03 19:17:27 christos Exp $
# OASIS # OASIS
# Summary: OASIS stream file # Summary: OASIS stream file
# Long descripton: Open Artwork System Interchange Standard # Long description: Open Artwork System Interchange Standard
# File extension: .oas # File extension: .oas
# Full name: Ben Cowley (bcowley@broadcom.com) # Full name: Ben Cowley (bcowley@broadcom.com)
# Philip Dixon (pdixon@broadcom.com) # Philip Dixon (pdixon@broadcom.com)

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: palm,v 1.9 2012/01/16 15:16:43 christos Exp $ # $File: palm,v 1.13 2014/03/30 21:40:08 christos Exp $
# palm: file(1) magic for PalmOS {.prc,.pdb}: applications, docfiles, and hacks # palm: file(1) magic for PalmOS {.prc,.pdb}: applications, docfiles, and hacks
# #
# Brian Lalor <blalor@hcirisc.cs.binghamton.edu> # Brian Lalor <blalor@hcirisc.cs.binghamton.edu>
@ -9,18 +9,70 @@
# 8 character identifiers at byte 60, one I found for appl is BIGb. # 8 character identifiers at byte 60, one I found for appl is BIGb.
# What are the possibilities and where is this documented? # What are the possibilities and where is this documented?
# The common header format for PalmOS .pdb/.prc files is
# {
# char name[ 32 ];
# Word attributes;
# Word version;
# DWord creationDate;
# DWord modificationDate;
# DWord lastBackupDate;
# DWord modificationNumber;
# DWord appInfoID;
# DWord sortInfoID;
# char type[4];
# char creator[4];
# DWord uniqueIDSeed;
# RecordListType recordList;
# };
#
# Datestamps are unsigned seconds since the MacOS epoch (Jan 1, 1904),
# or Unix/POSIX time + 2082844800.
0 name aportisdoc
# date is supposed to be big-endian seconds since 1 Jan 1904, but many
# files contain the timestamp in little-endian or a completely
# nonsensical value...
#>36 bedate-2082844800 >0 \b, created %s
# compression: 1=uncomp, 2=orig, 0x4448=HuffDic
>(78.L) beshort =1 \b, uncompressed
# compressed
>(78.L) beshort >1
>>(78.L+4) belong x \b, %d bytes uncompressed
# appl # appl
#59 byte \0 #60 string appl PalmOS application
#>60 string appl PalmOS application #>0 string >\0 "%s"
#>0 string >\0 "%s"
# TEXt
#59 byte \0
#>60 belong TEXt AportisDoc file
#>0 string >\0 "%s"
# HACK # HACK
#59 byte \0 #60 string HACK HackMaster hack
#>60 string HACK HackMaster hack #>0 string >\0 "%s"
#>0 string >\0 "%s"
# iSiloX e-book
60 string SDocSilX iSiloX E-book
>0 string >\0 "%s"
# Mobipocket (www.mobipocket.com), donated by Carl Witty
# expanded by Ralf Brown
60 string BOOKMOBI Mobipocket E-book
# MobiPocket stores a full title, pointed at by the belong at offset
# 0x54 in its header at (78.L), with length given by the belong at
# offset 0x58.
# there's no guarantee that the title string is null-terminated, but
# we currently can't specify a variable-length string where the length
# field is not at the start of the string; in practice, the data
# following the string always seems to start with a zero byte
>(78.L) belong x
>>&(&0x50.L-4) string >\0 "%s"
>0 use aportisdoc
>>(78.L+0x68) belong >0 \b, version %d
>>(78.L+0x1C) belong !0 \b, codepage %d
>>(78.L+0x0C) beshort >0 \b, encrypted (type %d)
# AportisDoc/PalmDOC
60 string TEXtREAd AportisDoc/PalmDOC E-book
>0 string >\0 "%s"
>0 use aportisdoc
# Variety of PalmOS document types # Variety of PalmOS document types
# Michael-John Turner <mj@debian.org> # Michael-John Turner <mj@debian.org>
@ -89,8 +141,12 @@
>>(0x4E.L+1) byte x %02d) >>(0x4E.L+1) byte x %02d)
# Palm OS .prc file types # Palm OS .prc file types
60 string libr Palm OS dynamic library data 60 string libr
>0 string >\0 "%s" # flags, only bit 0 or bit 6
# http://en.wikipedia.org/wiki/PRC_%28Palm_OS%29
# http://web.mit.edu/tytso/www/pilot/prc-format.html
>0x20 beshort&0xffbe 0
>>0 string >\0 Palm OS dynamic library data "%s"
60 string ptch Palm OS operating system patch data 60 string ptch Palm OS operating system patch data
>0 string >\0 "%s" >0 string >\0 "%s"

11
external/bsd/file/dist/magic/magdir/pbf vendored Normal file
View File

@ -0,0 +1,11 @@
#------------------------------------------------------------------------------
# $File: pbf,v 1.1 2013/12/21 14:27:24 christos Exp $
# file(1) magic(5) data for OpenStreetMap
# OpenStreetMap Protocolbuffer Binary Format (.osm.pbf)
# http://wiki.openstreetmap.org/wiki/PBF_Format
# From: Markus Heidelberg <markus.heidelberg@web.de>
0 belong 0x0000000D
>4 beshort 0x0A09
>>6 string OSMHeader OpenStreetMap Protocolbuffer Binary Format

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: pdp,v 1.9 2013/04/19 20:11:43 christos Exp $ # $File: pdp,v 1.10 2014/04/30 21:41:02 christos Exp $
# pdp: file(1) magic for PDP-11 executable/object and APL workspace # pdp: file(1) magic for PDP-11 executable/object and APL workspace
# #
0 lelong 0101555 PDP-11 single precision APL workspace 0 lelong 0101555 PDP-11 single precision APL workspace
@ -10,7 +10,7 @@
# #
0 leshort 0407 PDP-11 executable 0 leshort 0407 PDP-11 executable
>8 leshort >0 not stripped >8 leshort >0 not stripped
>15 byte >0 - version %ld >15 byte >0 - version %d
# updated by Joerg Jenderek at Mar 2013 # updated by Joerg Jenderek at Mar 2013
# GRR: line below too general as it catches also Windows precompiled setup information *.PNF # GRR: line below too general as it catches also Windows precompiled setup information *.PNF
@ -23,11 +23,11 @@
0 leshort 0410 PDP-11 pure executable 0 leshort 0410 PDP-11 pure executable
>8 leshort >0 not stripped >8 leshort >0 not stripped
>15 byte >0 - version %ld >15 byte >0 - version %d
0 leshort 0411 PDP-11 separate I&D executable 0 leshort 0411 PDP-11 separate I&D executable
>8 leshort >0 not stripped >8 leshort >0 not stripped
>15 byte >0 - version %ld >15 byte >0 - version %d
0 leshort 0437 PDP-11 kernel overlay 0 leshort 0437 PDP-11 kernel overlay

View File

@ -1,20 +1,14 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: perl,v 1.20 2012/06/21 01:16:49 christos Exp $ # $File: perl,v 1.22 2014/04/28 12:04:35 christos Exp $
# perl: file(1) magic for Larry Wall's perl language. # perl: file(1) magic for Larry Wall's perl language.
# #
# The `eval' lines recognizes an outrageously clever hack. # The `eval' lines recognizes an outrageously clever hack.
# Keith Waclena <keith@cerberus.uchicago.edu> # Keith Waclena <keith@cerberus.uchicago.edu>
# Send additions to <perl5-porters@perl.org> # Send additions to <perl5-porters@perl.org>
0 search/1/w #!\ /bin/perl Perl script text executable
!:mime text/x-perl
0 search/1 eval\ "exec\ /bin/perl Perl script text 0 search/1 eval\ "exec\ /bin/perl Perl script text
!:mime text/x-perl !:mime text/x-perl
0 search/1/w #!\ /usr/bin/perl Perl script text executable
!:mime text/x-perl
0 search/1 eval\ "exec\ /usr/bin/perl Perl script text 0 search/1 eval\ "exec\ /usr/bin/perl Perl script text
!:mime text/x-perl !:mime text/x-perl
0 search/1/w #!\ /usr/local/bin/perl Perl script text executable
!:mime text/x-perl
0 search/1 eval\ "exec\ /usr/local/bin/perl Perl script text 0 search/1 eval\ "exec\ /usr/local/bin/perl Perl script text
!:mime text/x-perl !:mime text/x-perl
0 search/1 eval\ '(exit\ $?0)'\ &&\ eval\ 'exec Perl script text 0 search/1 eval\ '(exit\ $?0)'\ &&\ eval\ 'exec Perl script text
@ -23,6 +17,9 @@
!:mime text/x-perl !:mime text/x-perl
0 search/1 #!\ /usr/bin/env\ perl Perl script text executable 0 search/1 #!\ /usr/bin/env\ perl Perl script text executable
!:mime text/x-perl !:mime text/x-perl
0 search/1 #!
>0 regex \^#!.*/bin/perl$ Perl script text executable
!:mime text/x-perl
# by Dmitry V. Levin and Alexey Tourbin # by Dmitry V. Levin and Alexey Tourbin
# check the first line # check the first line
@ -60,3 +57,34 @@
>>4 byte =5 (major 2) >>4 byte =5 (major 2)
>>4 byte =4 (major 2) >>4 byte =4 (major 2)
>>5 byte >0 (minor %d) >>5 byte >0 (minor %d)
# This is Debian #742949 by Zefram <zefram@fysh.org>:
# -----------------------------------------------------------
# The Perl module Hash::SharedMem
# <https://metacpan.org/release/Hash-SharedMem> defines a file format
# for a key/value store. Details of the file format are in the "DESIGN"
# file in the module distribution. Magic:
0 bequad =0xa58afd185cbf5af7 Hash::SharedMem master file, big-endian
>8 bequad <0x1000000
>>15 byte >2 \b, line size 2^%d byte
>>14 byte >2 \b, page size 2^%d byte
>>13 byte &1
>>>13 byte >1 \b, max fanout %d
0 lequad =0xa58afd185cbf5af7 Hash::SharedMem master file, little-endian
>8 lequad <0x1000000
>>8 byte >2 \b, line size 2^%d byte
>>9 byte >2 \b, page size 2^%d byte
>>10 byte &1
>>>10 byte >1 \b, max fanout %d
0 bequad =0xc693dac5ed5e47c2 Hash::SharedMem data file, big-endian
>8 bequad <0x1000000
>>15 byte >2 \b, line size 2^%d byte
>>14 byte >2 \b, page size 2^%d byte
>>13 byte &1
>>>13 byte >1 \b, max fanout %d
0 lequad =0xc693dac5ed5e47c2 Hash::SharedMem data file, little-endian
>8 lequad <0x1000000
>>8 byte >2 \b, line size 2^%d byte
>>9 byte >2 \b, page size 2^%d byte
>>10 byte &1
>>>10 byte >1 \b, max fanout %d

52
external/bsd/file/dist/magic/magdir/pgf vendored Normal file
View File

@ -0,0 +1,52 @@
#------------------------------------------------------------------------------
# $File: pgf,v 1.1 2013/04/22 15:19:49 christos Exp $
# pgf: file(1) magic for Progressive Graphics File (PGF)
#
# <http://www.libpgf.org/uploads/media/PGF_Details_01.pdf>
# 2013 by Philipp Hahn <pmhahn debian org>
0 string PGF Progressive Graphics image data,
!:mime image/x-pgf
>3 string 2 version %s,
>3 string 4 version %s,
>3 string 5 version %s,
>3 string 6 version %s,
# PGFPreHeader
#>>4 lelong x header size %d,
# PGFHeader
>>8 lelong x %d x
>>12 lelong x %d,
>>16 byte x %d levels,
>>17 byte x compression level %d,
>>18 byte x %d bpp,
>>19 byte x %d channels,
>>20 clear x
>>20 byte 0 bitmap,
>>20 byte 1 gray scale,
>>20 byte 2 indexed color,
>>20 byte 3 RGB color,
>>20 byte 4 CYMK color,
>>20 byte 5 HSL color,
>>20 byte 6 HSB color,
>>20 byte 7 multi-channel,
>>20 byte 8 duo tone,
>>20 byte 9 LAB color,
>>20 byte 10 gray scale 16,
>>20 byte 11 RGB color 48,
>>20 byte 12 LAB color 48,
>>20 byte 13 CYMK color 64,
>>20 byte 14 deep multi-channel,
>>20 byte 15 duo tone 16,
>>20 byte 17 RGBA color,
>>20 byte 18 gray scale 32,
>>20 byte 19 RGB color 12,
>>20 byte 20 RGB color 16,
>>20 byte 255 unknown format,
>>20 default x format
>>>20 byte x \b %d,
>>21 byte x %d bpc
# PGFPostHeader
# Level-Sizes
#>>(4.l+4) lelong x level 0 size: %d
#>>(4.l+8) lelong x level 1 size: %d
#>>(4.l+12) lelong x level 2 size: %d

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: printer,v 1.25 2011/05/20 23:31:46 christos Exp $ # $File: printer,v 1.26 2014/04/12 14:51:52 christos Exp $
# printer: file(1) magic for printer-formatted files # printer: file(1) magic for printer-formatted files
# #
@ -68,6 +68,22 @@
0 string \033%-12345X@PJL 0 string \033%-12345X@PJL
>&0 search/10000 %! PJL encapsulated PostScript document text >&0 search/10000 %! PJL encapsulated PostScript document text
# Rick Richardson <rickrich@gmail.com>
# For Fuji-Xerox Printers - HBPL stands for Host Based Printer Language
# For Oki Data Printers - HIPERC
# For Konica Minolta Printers - LAVAFLOW
# For Samsung Printers - QPDL
# For HP Printers - ZJS stands for Zenographics ZJStream
0 string \033%-12345X@PJL HP Printer Job Language data
>0 search/10000 @PJL\ ENTER\ LANGUAGE=HBPL - HBPL
>0 search/10000 @PJL\ ENTER\ LANGUAGE=HIPERC - Oki Data HIPERC
>0 search/10000 @PJL\ ENTER\ LANGUAGE=LAVAFLOW - Konica Minolta LAVAFLOW
>0 search/10000 @PJL\ ENTER\ LANGUAGE=QPDL - Samsung QPDL
>0 search/10000 @PJL\ ENTER\ LANGUAGE\ =\ QPDL - Samsung QPDL
>0 search/10000 @PJL\ ENTER\ LANGUAGE=ZJS - HP ZJS
# HP Printer Control Language, Daniel Quinlan (quinlan@yggdrasil.com) # HP Printer Control Language, Daniel Quinlan (quinlan@yggdrasil.com)
0 string \033E\033 HP PCL printer data 0 string \033E\033 HP PCL printer data
>3 string \&l0A - default page size >3 string \&l0A - default page size
@ -108,7 +124,7 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# zenographics: file(1) magic for Zenographics ZjStream printer data # zenographics: file(1) magic for Zenographics ZjStream printer data
# Rick Richardson rickr@mn.rr.com # Rick Richardson <rickrich@gmail.com>
0 string JZJZ 0 string JZJZ
>0x12 string ZZ Zenographics ZjStream printer data (big-endian) >0x12 string ZZ Zenographics ZjStream printer data (big-endian)
0 string ZJZJ 0 string ZJZJ
@ -117,7 +133,7 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# Oak Technologies printer stream # Oak Technologies printer stream
# Rick Richardson <rickr@mn.rr.com> # Rick Richardson <rickrich@gmail.com>
0 string OAK 0 string OAK
>0x07 byte 0 >0x07 byte 0
>0x0b byte 0 Oak Technologies printer stream >0x0b byte 0 Oak Technologies printer stream

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: python,v 1.22 2013/03/18 12:49:55 christos Exp $ # $File: python,v 1.25 2014/05/06 16:08:32 christos Exp $
# python: file(1) magic for python # python: file(1) magic for python
# #
# Outlook puts """ too for urgent messages # Outlook puts """ too for urgent messages
@ -44,13 +44,13 @@
!:mime text/x-python !:mime text/x-python
# comments # comments
0 search/4096 ''' #0 search/4096 '''
>&0 regex .*'''$ Python script text executable #>&0 regex .*'''$ Python script text executable
!:mime text/x-python #!:mime text/x-python
0 search/4096 """ #0 search/4096 """
>&0 regex .*"""$ Python script text executable #>&0 regex .*"""$ Python script text executable
!:mime text/x-python #!:mime text/x-python
# try: # try:
# except: or finally: # except: or finally:
@ -62,6 +62,6 @@
!:mime text/x-python !:mime text/x-python
# def name(args, args): # def name(args, args):
0 regex \^(\ |\\t)*def\ +[a-zA-Z]+ 0 regex \^(\ |\\t){0,50}def\ {1,50}[a-zA-Z]{1,100}
>&0 regex \ *\\(([a-zA-Z]|,|\ )*\\):$ Python script text executable >&0 regex \ {0,50}\\(([a-zA-Z]|,|\ ){1,255}\\):$ Python script text executable
!:mime text/x-python !:mime text/x-python

View File

@ -1,11 +1,51 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: riff,v 1.24 2013/11/19 23:58:17 christos Exp $ # $File: riff,v 1.27 2014/04/30 21:41:02 christos Exp $
# riff: file(1) magic for RIFF format # riff: file(1) magic for RIFF format
# See # See
# #
# http://www.seanet.com/users/matts/riffmci/riffmci.htm # http://www.seanet.com/users/matts/riffmci/riffmci.htm
# #
# audio format tag. Assume limits: max 1024 bit, 128 channels, 1 MHz
0 name riff-wave
>0 leshort 1 \b, Microsoft PCM
>>14 leshort >0
>>>14 leshort <1024 \b, %d bit
>0 leshort 2 \b, Microsoft ADPCM
>0 leshort 6 \b, ITU G.711 A-law
>0 leshort 7 \b, ITU G.711 mu-law
>0 leshort 8 \b, Microsoft DTS
>0 leshort 17 \b, IMA ADPCM
>0 leshort 20 \b, ITU G.723 ADPCM (Yamaha)
>0 leshort 49 \b, GSM 6.10
>0 leshort 64 \b, ITU G.721 ADPCM
>0 leshort 80 \b, MPEG
>0 leshort 85 \b, MPEG Layer 3
>0 leshort 0x2001 \b, DTS
>2 leshort =1 \b, mono
>2 leshort =2 \b, stereo
>2 leshort >2
>>2 leshort <128 \b, %d channels
>4 lelong >0
>>4 lelong <1000000 %d Hz
# try to find "fmt "
0 name riff-walk
>0 string fmt\x20
>>4 lelong <0x80
>>>8 use riff-wave
>0 string LIST
>>&(4.l+4) use riff-walk
>0 string DISP
>>&(4.l+4) use riff-walk
>0 string bext
>>&(4.l+4) use riff-walk
>0 string Fake
>>&(4.l+4) use riff-walk
>0 string fact
>>&(4.l+4) use riff-walk
# AVI section extended by Patrik Radman <patrik+file-magic@iki.fi> # AVI section extended by Patrik Radman <patrik+file-magic@iki.fi>
# #
0 string RIFF RIFF (little-endian) data 0 string RIFF RIFF (little-endian) data
@ -35,35 +75,21 @@
# Microsoft WAVE format (*.wav) # Microsoft WAVE format (*.wav)
>8 string WAVE \b, WAVE audio >8 string WAVE \b, WAVE audio
!:mime audio/x-wav !:mime audio/x-wav
>>20 leshort 1 \b, Microsoft PCM >>12 string >\0
>>>34 leshort >0 \b, %d bit >>>12 use riff-walk
>>20 leshort 2 \b, Microsoft ADPCM
>>20 leshort 6 \b, ITU G.711 A-law
>>20 leshort 7 \b, ITU G.711 mu-law
>>20 leshort 8 \b, Microsoft DTS
>>20 leshort 17 \b, IMA ADPCM
>>20 leshort 20 \b, ITU G.723 ADPCM (Yamaha)
>>20 leshort 49 \b, GSM 6.10
>>20 leshort 64 \b, ITU G.721 ADPCM
>>20 leshort 80 \b, MPEG
>>20 leshort 85 \b, MPEG Layer 3
>>20 leshort 0x2001 \b, DTS
>>22 leshort =1 \b, mono
>>22 leshort =2 \b, stereo
>>22 leshort >2 \b, %d channels
>>24 lelong >0 %d Hz
# Corel Draw Picture # Corel Draw Picture
>8 string CDRA \b, Corel Draw Picture >8 string CDRA \b, Corel Draw Picture
!:mime image/x-coreldraw !:mime image/x-coreldraw
>8 string CDR6 \b, Corel Draw Picture, version 6 >8 string CDR6 \b, Corel Draw Picture, version 6
!:mime image/x-coreldraw !:mime image/x-coreldraw
>8 string NUNDROOT \b, Steinberg CuBase
# AVI == Audio Video Interleave # AVI == Audio Video Interleave
>8 string AVI\040 \b, AVI >8 string AVI\040 \b, AVI
!:mime video/x-msvideo !:mime video/x-msvideo
>>12 string LIST >>12 string LIST
>>>20 string hdrlavih >>>20 string hdrlavih
>>>>&36 lelong x \b, %lu x >>>>&36 lelong x \b, %u x
>>>>&40 lelong x %lu, >>>>&40 lelong x %u,
>>>>&4 lelong >1000000 <1 fps, >>>>&4 lelong >1000000 <1 fps,
>>>>&4 lelong 1000000 1.00 fps, >>>>&4 lelong 1000000 1.00 fps,
>>>>&4 lelong 500000 2.00 fps, >>>>&4 lelong 500000 2.00 fps,

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: scientific,v 1.7 2010/09/20 19:19:17 rrt Exp $ # $File: scientific,v 1.9 2014/06/03 19:01:34 christos Exp $
# scientific: file(1) magic for scientific formats # scientific: file(1) magic for scientific formats
# #
# From: Joe Krahn <krahn@niehs.nih.gov> # From: Joe Krahn <krahn@niehs.nih.gov>
@ -65,7 +65,7 @@
0 search/1/c 0\ HEAD GEDCOM genealogy text 0 search/1/c 0\ HEAD GEDCOM genealogy text
>&0 search 1\ GEDC >&0 search 1\ GEDC
>>&0 search 2\ VERS version >>&0 search 2\ VERS version
>>>&1 search/1 >\0 %s >>>&1 string >\0 %s
# From: Phil Endecott <phil05@chezphil.org> # From: Phil Endecott <phil05@chezphil.org>
0 string \000\060\000\040\000\110\000\105\000\101\000\104 GEDCOM data 0 string \000\060\000\040\000\110\000\105\000\101\000\104 GEDCOM data
0 string \060\000\040\000\110\000\105\000\101\000\104\000 GEDCOM data 0 string \060\000\040\000\110\000\105\000\101\000\104\000 GEDCOM data
@ -91,12 +91,12 @@
# uppercase letters. However, examples have been seen without the date string, # uppercase letters. However, examples have been seen without the date string,
# e.g., the example on the chemime site. # e.g., the example on the chemime site.
0 string HEADER\ \ \ \ 0 string HEADER\ \ \ \
>&0 regex/1 \^.{40} >&0 regex/1l \^.{40}
>>&0 regex/1 [0-9]{2}-[A-Z]{3}-[0-9]{2}\ {3} >>&0 regex/1l [0-9]{2}-[A-Z]{3}-[0-9]{2}\ {3}
>>>&0 regex/1s [A-Z0-9]{4}.{14}$ >>>&0 regex/1ls [A-Z0-9]{4}.{14}$
>>>>&0 regex/1 [A-Z0-9]{4} Protein Data Bank data, ID Code %s >>>>&0 regex/1l [A-Z0-9]{4} Protein Data Bank data, ID Code %s
!:mime chemical/x-pdb !:mime chemical/x-pdb
>>>>0 regex/1 [0-9]{2}-[A-Z]{3}-[0-9]{2} \b, %s >>>>0 regex/1l [0-9]{2}-[A-Z]{3}-[0-9]{2} \b, %s
# Type: GDSII Stream file # Type: GDSII Stream file
0 belong 0x00060002 GDSII Stream file 0 belong 0x00060002 GDSII Stream file

View File

@ -1,35 +1,45 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: sequent,v 1.8 2009/09/19 16:28:12 christos Exp $ # $File: sequent,v 1.11 2014/06/02 19:27:54 christos Exp $
# sequent: file(1) magic for Sequent machines # sequent: file(1) magic for Sequent machines
# #
# Sequent information updated by Don Dwiggins <atsun!dwiggins>. # Sequent information updated by Don Dwiggins <atsun!dwiggins>.
# For Sequent's multiprocessor systems (incomplete). # For Sequent's multiprocessor systems (incomplete).
0 lelong 0x00ea BALANCE NS32000 .o 0 lelong 0x00ea BALANCE NS32000 .o
>16 lelong >0 not stripped >16 lelong >0 not stripped
>124 lelong >0 version %ld >124 lelong >0 version %d
0 lelong 0x10ea BALANCE NS32000 executable (0 @ 0) 0 lelong 0x10ea BALANCE NS32000 executable (0 @ 0)
>16 lelong >0 not stripped >16 lelong >0 not stripped
>124 lelong >0 version %ld >124 lelong >0 version %d
0 lelong 0x20ea BALANCE NS32000 executable (invalid @ 0) 0 lelong 0x20ea BALANCE NS32000 executable (invalid @ 0)
>16 lelong >0 not stripped >16 lelong >0 not stripped
>124 lelong >0 version %ld >124 lelong >0 version %d
0 lelong 0x30ea BALANCE NS32000 standalone executable 0 lelong 0x30ea BALANCE NS32000 standalone executable
>16 lelong >0 not stripped >16 lelong >0 not stripped
>124 lelong >0 version %ld >124 lelong >0 version %d
# #
# Symmetry information added by Jason Merrill <jason@jarthur.claremont.edu>. # Symmetry information added by Jason Merrill <jason@jarthur.claremont.edu>.
# Symmetry magic nums will not be reached if DOS COM comes before them; # Symmetry magic nums will not be reached if DOS COM comes before them;
# byte 0xeb is matched before these get a chance. # byte 0xeb is matched before these get a chance.
0 leshort 0x12eb SYMMETRY i386 .o 0 leshort 0x12eb SYMMETRY i386 .o
>16 lelong >0 not stripped >16 lelong >0 not stripped
>124 lelong >0 version %ld >124 lelong >0 version %d
0 leshort 0x22eb SYMMETRY i386 executable (0 @ 0) 0 leshort 0x22eb SYMMETRY i386 executable (0 @ 0)
>16 lelong >0 not stripped >16 lelong >0 not stripped
>124 lelong >0 version %ld >124 lelong >0 version %d
0 leshort 0x32eb SYMMETRY i386 executable (invalid @ 0) 0 leshort 0x32eb SYMMETRY i386 executable (invalid @ 0)
>16 lelong >0 not stripped >16 lelong >0 not stripped
>124 lelong >0 version %ld >124 lelong >0 version %d
0 leshort 0x42eb SYMMETRY i386 standalone executable 0 leshort 0x42eb SYMMETRY i386 standalone executable
>16 lelong >0 not stripped >16 lelong >0 not stripped
>124 lelong >0 version %ld >124 lelong >0 version %d
# http://en.wikipedia.org/wiki/Sequent_Computer_Systems
# below test line conflicts with MS-DOS 2.11 floppies and Acronis loader
#0 leshort 0x42eb SYMMETRY i386 standalone executable
0 leshort 0x42eb
# skip unlike negative version
>124 lelong >-1
# assuming version 28867614 is very low probable
>>124 lelong !28867614 SYMMETRY i386 standalone executable
>>>16 lelong >0 not stripped
>>>124 lelong >0 version %d

View File

@ -0,0 +1,24 @@
#------------------------------------------------------------------------------
# $File: sereal,v 1.1 2014/05/14 23:04:59 christos Exp $
# sereal: file(1) magic the Sereal binary serialization format
#
# From: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
#
# See the specification of the format at
# https://github.com/Sereal/Sereal/blob/master/sereal_spec.pod#document-header-format
#
# I'd have liked to do the byte&0xF0 matching against 0, 1, 2 ... by
# doing (byte&0xF0)>>4 here, but unfortunately that's not
# supported. So when we print out a message about an unknown format
# we'll print out e.g. 0x30 instead of the more human-readable
# 0x30>>4.
#
# See https://github.com/Sereal/Sereal/commit/35372ae01d in the
# Sereal.git repository for test Sereal data.
0 string \=srl Sereal data
!:mime application/sereal
>4 byte&0x0F x (version %d,
>4 byte&0xF0 0x00 uncompressed)
>4 byte&0xF0 0x10 compressed with non-incremental Snappy)
>4 byte&0xF0 0x20 compressed with incremental Snappy)
>4 byte&0xF0 >0x20 unknown subformat, flag: %d>>4)

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: sgi,v 1.19 2013/01/12 03:09:51 christos Exp $ # $File: sgi,v 1.21 2014/04/30 21:41:02 christos Exp $
# sgi: file(1) magic for Silicon Graphics operating systems and applications # sgi: file(1) magic for Silicon Graphics operating systems and applications
# #
# Executable images are handled either in aout (for old-style a.out # Executable images are handled either in aout (for old-style a.out
@ -17,16 +17,16 @@
0 beshort 0x0506 IRIS Showcase file 0 beshort 0x0506 IRIS Showcase file
>2 byte 0x49 - >2 byte 0x49 -
>3 byte x - version %ld >3 byte x - version %d
0 beshort 0x0226 IRIS Showcase template 0 beshort 0x0226 IRIS Showcase template
>2 byte 0x63 - >2 byte 0x63 -
>3 byte x - version %ld >3 byte x - version %d
0 belong 0x5343464d IRIS Showcase file 0 belong 0x5343464d IRIS Showcase file
>4 byte x - version %ld >4 byte x - version %d
0 belong 0x5443464d IRIS Showcase template 0 belong 0x5443464d IRIS Showcase template
>4 byte x - version %ld >4 byte x - version %d
0 belong 0xdeadbabe IRIX Parallel Arena 0 belong 0xdeadbabe IRIX Parallel Arena
>8 belong >0 - version %ld >8 belong >0 - version %d
# core files # core files
# #
@ -49,7 +49,7 @@
# Trusted IRIX info # Trusted IRIX info
0 string SGIAUDIT SGI Audit file 0 string SGIAUDIT SGI Audit file
>8 byte x - version %d >8 byte x - version %d
>9 byte x \b.%ld >9 byte x \b.%d
# #
0 string WNGZWZSC Wingz compiled script 0 string WNGZWZSC Wingz compiled script
0 string WNGZWZSS Wingz spreadsheet 0 string WNGZWZSS Wingz spreadsheet
@ -82,11 +82,11 @@
#>20 lelong -2 temporal index #>20 lelong -2 temporal index
#>20 lelong -1 metadata #>20 lelong -1 metadata
#>20 lelong 0 log volume #0 #>20 lelong 0 log volume #0
#>20 lelong >0 log volume #%ld #>20 lelong >0 log volume #%d
>20 belong -2 temporal index >20 belong -2 temporal index
>20 belong -1 metadata >20 belong -1 metadata
>20 belong 0 log volume #0 >20 belong 0 log volume #0
>20 belong >0 log volume #%ld >20 belong >0 log volume #%d
>24 string >\0 host: %s >24 string >\0 host: %s
0 string PCPFolio PCP 0 string PCPFolio PCP
>9 string Version: Archive Folio >9 string Version: Archive Folio
@ -128,7 +128,7 @@
>11 byte x dataformat %d >11 byte x dataformat %d
# Alias Maya files # Alias Maya files
0 string/t //Maya ASCII Alias Maya Ascii File, 0 string/t //Maya\040ASCII Alias Maya Ascii File,
>13 string >\0 version %s >13 string >\0 version %s
8 string MAYAFOR4 Alias Maya Binary File, 8 string MAYAFOR4 Alias Maya Binary File,
>32 string >\0 version %s scene >32 string >\0 version %s scene

View File

@ -1,5 +1,5 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: sgml,v 1.29 2012/08/26 10:25:41 christos Exp $ # $File: sgml,v 1.30 2013/12/21 14:27:24 christos Exp $
# Type: SVG Vectorial Graphics # Type: SVG Vectorial Graphics
# From: Noel Torres <tecnico@ejerciciosresueltos.com> # From: Noel Torres <tecnico@ejerciciosresueltos.com>
0 string \<?xml\ version=" 0 string \<?xml\ version="
@ -15,6 +15,13 @@
>>19 search/4096 \<urlset XML Sitemap document text >>19 search/4096 \<urlset XML Sitemap document text
!:mime application/xml-sitemap !:mime application/xml-sitemap
# OpenStreetMap XML (.osm)
# http://wiki.openstreetmap.org/wiki/OSM_XML
# From: Markus Heidelberg <markus.heidelberg@web.de>
0 string \<?xml\ version="
>15 string >\0
>>19 search/4096 \<osm OpenStreetMap XML data
# xhtml # xhtml
0 string/t \<?xml\ version=" 0 string/t \<?xml\ version="
>15 string >\0 >15 string >\0

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------ #------------------------------------------------------------------------
# $File: sharc,v 1.6 2009/09/19 16:28:12 christos Exp $ # $File: sharc,v 1.7 2014/04/30 21:41:02 christos Exp $
# file(1) magic for sharc files # file(1) magic for sharc files
# #
# SHARC DSP, MIDI SysEx and RiscOS filetype definitions added by # SHARC DSP, MIDI SysEx and RiscOS filetype definitions added by
@ -19,5 +19,5 @@
0 string .system SHARC architecture file 0 string .system SHARC architecture file
0 leshort 0x521C SHARC COFF binary 0 leshort 0x521C SHARC COFF binary
>2 leshort >1 , %hd sections >2 leshort >1 , %d sections
>>12 lelong >0 , not stripped >>12 lelong >0 , not stripped

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: sql,v 1.13 2013/08/27 04:02:33 christos Exp $ # $File: sql,v 1.15 2014/04/30 21:41:02 christos Exp $
# sql: file(1) magic for SQL files # sql: file(1) magic for SQL files
# #
# From: "Marty Leisner" <mleisner@eng.mc.xerox.com> # From: "Marty Leisner" <mleisner@eng.mc.xerox.com>
@ -69,7 +69,7 @@
# SQLite Write-Ahead Log from SQLite version >= 3.7.0 # SQLite Write-Ahead Log from SQLite version >= 3.7.0
# http://www.sqlite.org/fileformat.html#walformat # http://www.sqlite.org/fileformat.html#walformat
0 belong&0xfffffffe 0x377f0682 SQLite Write-Ahead Log, 0 belong&0xfffffffe 0x377f0682 SQLite Write-Ahead Log,
>4 belong x version %ld >4 belong x version %d
# SQLite Rollback Journal # SQLite Rollback Journal
# http://www.sqlite.org/fileformat.html#rollbackjournal # http://www.sqlite.org/fileformat.html#rollbackjournal

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: sun,v 1.25 2013/01/09 22:37:24 christos Exp $ # $File: sun,v 1.27 2014/04/30 21:41:02 christos Exp $
# sun: file(1) magic for Sun machines # sun: file(1) magic for Sun machines
# #
# Values for big-endian Sun (MC680x0, SPARC) binaries on pre-5.x # Values for big-endian Sun (MC680x0, SPARC) binaries on pre-5.x
@ -9,7 +9,7 @@
# are in aout, as they're indistinguishable from other big-endian # are in aout, as they're indistinguishable from other big-endian
# 32-bit a.out files. # 32-bit a.out files.
# #
0 belong&077777777 0600413 a.out SunOS sparc demand paged 0 belong&077777777 0600413 a.out SunOS SPARC demand paged
>0 byte &0x80 >0 byte &0x80
>>20 belong <4096 shared library >>20 belong <4096 shared library
>>20 belong =4096 dynamically linked executable >>20 belong =4096 dynamically linked executable
@ -17,12 +17,12 @@
>0 byte ^0x80 executable >0 byte ^0x80 executable
>16 belong >0 not stripped >16 belong >0 not stripped
0 belong&077777777 0600410 a.out SunOS sparc pure 0 belong&077777777 0600410 a.out SunOS SPARC pure
>0 byte &0x80 dynamically linked executable >0 byte &0x80 dynamically linked executable
>0 byte ^0x80 executable >0 byte ^0x80 executable
>16 belong >0 not stripped >16 belong >0 not stripped
0 belong&077777777 0600407 a.out SunOS sparc 0 belong&077777777 0600407 a.out SunOS SPARC
>0 byte &0x80 dynamically linked executable >0 byte &0x80 dynamically linked executable
>0 byte ^0x80 executable >0 byte ^0x80 executable
>16 belong >0 not stripped >16 belong >0 not stripped
@ -97,7 +97,7 @@
# which is the IANA registry of Snoop datalink types) # which is the IANA registry of Snoop datalink types)
# #
0 string snoop Snoop capture file 0 string snoop Snoop capture file
>8 belong >0 - version %ld >8 belong >0 - version %d
>12 belong 0 (IEEE 802.3) >12 belong 0 (IEEE 802.3)
>12 belong 1 (IEEE 802.4) >12 belong 1 (IEEE 802.4)
>12 belong 2 (IEEE 802.5) >12 belong 2 (IEEE 802.5)
@ -108,24 +108,24 @@
>12 belong 7 (IBM channel-to-channel adapter) >12 belong 7 (IBM channel-to-channel adapter)
>12 belong 8 (FDDI) >12 belong 8 (FDDI)
>12 belong 9 (Other) >12 belong 9 (Other)
>12 belong 10 (type %ld) >12 belong 10 (type %d)
>12 belong 11 (type %ld) >12 belong 11 (type %d)
>12 belong 12 (type %ld) >12 belong 12 (type %d)
>12 belong 13 (type %ld) >12 belong 13 (type %d)
>12 belong 14 (type %ld) >12 belong 14 (type %d)
>12 belong 15 (type %ld) >12 belong 15 (type %d)
>12 belong 16 (Fibre Channel) >12 belong 16 (Fibre Channel)
>12 belong 17 (ATM) >12 belong 17 (ATM)
>12 belong 18 (ATM Classical IP) >12 belong 18 (ATM Classical IP)
>12 belong 19 (type %ld) >12 belong 19 (type %d)
>12 belong 20 (type %ld) >12 belong 20 (type %d)
>12 belong 21 (type %ld) >12 belong 21 (type %d)
>12 belong 22 (type %ld) >12 belong 22 (type %d)
>12 belong 23 (type %ld) >12 belong 23 (type %d)
>12 belong 24 (type %ld) >12 belong 24 (type %d)
>12 belong 25 (type %ld) >12 belong 25 (type %d)
>12 belong 26 (IP over Infiniband) >12 belong 26 (IP over Infiniband)
>12 belong >26 (type %ld) >12 belong >26 (type %d)
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# The following entries have been tested by Duncan Laurie <duncan@sun.com> (a # The following entries have been tested by Duncan Laurie <duncan@sun.com> (a

View File

@ -2,7 +2,7 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# msx: file(1) magic for the SymbOS operating system # msx: file(1) magic for the SymbOS operating system
# http://www.symbos.de # http://www.symbos.de
# Fábio R. Schmidlin <frs@pop.com.br> # Fabio R. Schmidlin <frs@pop.com.br>
# SymbOS EXE file # SymbOS EXE file
0x30 string SymExe SymbOS executable 0x30 string SymExe SymbOS executable

View File

@ -1,9 +1,9 @@
#------------------------------------------------------------------------ #------------------------------------------------------------------------
# $File: sysex,v 1.7 2013/09/16 15:12:42 christos Exp $ # $File: sysex,v 1.8 2014/06/03 19:17:27 christos Exp $
# sysex: file(1) magic for MIDI sysex files # sysex: file(1) magic for MIDI sysex files
# #
# GRR: orginal 1 byte test at offset was too general as it catches also many FATs of DOS filesystems # GRR: original 1 byte test at offset was too general as it catches also many FATs of DOS filesystems
# where real SYStem EXclusive messages at offset 1 are limited to seven bits # where real SYStem EXclusive messages at offset 1 are limited to seven bits
# http://en.wikipedia.org/wiki/MIDI # http://en.wikipedia.org/wiki/MIDI
0 ubeshort&0xFF80 0xF000 SysEx File - 0 ubeshort&0xFF80 0xF000 SysEx File -

View File

@ -5,7 +5,7 @@
# Tcl scripts # Tcl scripts
0 search/1/w #!\ /usr/bin/tcl Tcl script text executable 0 search/1/w #!\ /usr/bin/tcl Tcl script text executable
!:mime text/x-lua !:mime text/x-tcl
0 search/1/w #!\ /usr/local/bin/tcl Tcl script text executable 0 search/1/w #!\ /usr/local/bin/tcl Tcl script text executable
!:mime text/x-tcl !:mime text/x-tcl
0 search/1 #!/usr/bin/env\ tcl Tcl script text executable 0 search/1 #!/usr/bin/env\ tcl Tcl script text executable

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: tex,v 1.19 2013/09/17 17:39:16 christos Exp $ # $File: tex,v 1.20 2014/03/16 02:53:03 christos Exp $
# tex: file(1) magic for TeX files # tex: file(1) magic for TeX files
# #
# XXX - needs byte-endian stuff (big-endian and little-endian DVI?) # XXX - needs byte-endian stuff (big-endian and little-endian DVI?)
@ -106,3 +106,34 @@
0 search/1 @c\ @mapfile{ TeX font aliases text file 0 search/1 @c\ @mapfile{ TeX font aliases text file
0 string #LyX LyX document text 0 string #LyX LyX document text
# ConTeXt documents
# http://wiki.contextgarden.net/
0 search/4096 \\setupcolors[ ConTeXt document text
!:strength + 15
0 search/4096 \\definecolor[ ConTeXt document text
!:strength + 15
0 search/4096 \\setupinteraction[ ConTeXt document text
!:strength + 15
0 search/4096 \\useURL[ ConTeXt document text
!:strength + 15
0 search/4096 \\setuppapersize[ ConTeXt document text
!:strength + 15
0 search/4096 \\setuplayout[ ConTeXt document text
!:strength + 15
0 search/4096 \\setupfooter[ ConTeXt document text
!:strength + 15
0 search/4096 \\setupfootertexts[ ConTeXt document text
!:strength + 15
0 search/4096 \\setuppagenumbering[ ConTeXt document text
!:strength + 15
0 search/4096 \\setupbodyfont[ ConTeXt document text
!:strength + 15
0 search/4096 \\setuphead[ ConTeXt document text
!:strength + 15
0 search/4096 \\setupitemize[ ConTeXt document text
!:strength + 15
0 search/4096 \\setupwhitespace[ ConTeXt document text
!:strength + 15
0 search/4096 \\setupindenting[ ConTeXt document text
!:strength + 15

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: ti-8x,v 1.6 2009/09/19 16:28:12 christos Exp $ # $File: ti-8x,v 1.7 2014/04/30 21:41:02 christos Exp $
# ti-8x: file(1) magic for the TI-8x and TI-9x Graphing Calculators. # ti-8x: file(1) magic for the TI-8x and TI-9x Graphing Calculators.
# #
# From: Ryan McGuire (rmcguire@freenet.columbus.oh.us). # From: Ryan McGuire (rmcguire@freenet.columbus.oh.us).
@ -222,7 +222,7 @@
>49 byte 0x24 type: application, >49 byte 0x24 type: application,
>49 byte 0x25 type: certificate, >49 byte 0x25 type: certificate,
>49 byte 0x3e type: license, >49 byte 0x3e type: license,
>74 lelong >0 size: %ld bytes >74 lelong >0 size: %d bytes
# VTi & TiEmu skins (TI Graphing Calculators). # VTi & TiEmu skins (TI Graphing Calculators).
# From: Romain Lievin (roms@lpg.ticalc.org). # From: Romain Lievin (roms@lpg.ticalc.org).

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: troff,v 1.10 2009/09/19 16:28:12 christos Exp $ # $File: troff,v 1.11 2014/06/03 19:01:34 christos Exp $
# troff: file(1) magic for *roff # troff: file(1) magic for *roff
# #
# updated by Daniel Quinlan (quinlan@yggdrasil.com) # updated by Daniel Quinlan (quinlan@yggdrasil.com)
@ -16,9 +16,9 @@
!:mime text/troff !:mime text/troff
0 search/1 ''' troff or preprocessor input text 0 search/1 ''' troff or preprocessor input text
!:mime text/troff !:mime text/troff
0 regex/20 \^\\.[A-Za-z0-9][A-Za-z0-9][\ \t] troff or preprocessor input text 0 regex/20l \^\\.[A-Za-z0-9][A-Za-z0-9][\ \t] troff or preprocessor input text
!:mime text/troff !:mime text/troff
0 regex/20 \^\\.[A-Za-z0-9][A-Za-z0-9]$ troff or preprocessor input text 0 regex/20l \^\\.[A-Za-z0-9][A-Za-z0-9]$ troff or preprocessor input text
!:mime text/troff !:mime text/troff
# ditroff intermediate output text # ditroff intermediate output text

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: uterus,v 1.1 2012/12/18 18:53:32 christos Exp $ # $File: uterus,v 1.3 2014/04/30 21:41:02 christos Exp $
# file(1) magic for uterus files # file(1) magic for uterus files
# http://freecode.com/projects/uterus # http://freecode.com/projects/uterus
# #

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: varied.out,v 1.22 2010/07/02 00:06:27 christos Exp $ # $File: varied.out,v 1.23 2014/04/30 21:41:02 christos Exp $
# varied.out: file(1) magic for various USG systems # varied.out: file(1) magic for various USG systems
# #
# Herewith many of the object file formats used by USG systems. # Herewith many of the object file formats used by USG systems.
@ -26,7 +26,7 @@
>7 string >\0 version '%s' >7 string >\0 version '%s'
# gnu gmon magic From: Eugen Dedu <dedu@ese-metz.fr> # gnu gmon magic From: Eugen Dedu <dedu@ese-metz.fr>
0 string gmon GNU prof performance data 0 string gmon GNU prof performance data
>4 long x - version %ld >4 long x - version %d
# From: Dave Pearson <davep@davep.org> # From: Dave Pearson <davep@davep.org>
# Harbour <URL:http://harbour-project.org/> HRB files. # Harbour <URL:http://harbour-project.org/> HRB files.
0 string \xc0HRB Harbour HRB file 0 string \xc0HRB Harbour HRB file

View File

@ -1,28 +1,56 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: varied.script,v 1.9 2011/12/16 16:32:48 rrt Exp $ # $File: varied.script,v 1.10 2014/03/01 22:32:39 christos Exp $
# varied.script: file(1) magic for various interpreter scripts # varied.script: file(1) magic for various interpreter scripts
0 string/t #!\ / a 0 string/t #!\ / a
>3 string >\0 %s script text executable >3 string >\0 %s script text executable
!:strength / 2 !:strength / 2
0 string/b #!\ / a
>3 string >\0 %s script executable (binary data)
!:strength / 2
0 string/t #!\t/ a 0 string/t #!\t/ a
>3 string >\0 %s script text executable >3 string >\0 %s script text executable
!:strength / 2 !:strength / 2
0 string/b #!\t/ a
>3 string >\0 %s script executable (binary data)
!:strength / 2
0 string/t #!/ a 0 string/t #!/ a
>2 string >\0 %s script text executable >2 string >\0 %s script text executable
!:strength / 2 !:strength / 2
0 string/b #!/ a
>2 string >\0 %s script executable (binary data)
!:strength / 2
0 string/t #!\ script text executable 0 string/t #!\ script text executable
>3 string >\0 for %s >3 string >\0 for %s
!:strength / 3 !:strength / 3
0 string/b #!\ script executable
>3 string >\0 for %s (binary data)
!:strength / 3
# using env # using env
0 string/t #!/usr/bin/env a 0 string/t #!/usr/bin/env a
>15 string/t >\0 %s script text executable >15 string/t >\0 %s script text executable
!:strength / 10 !:strength / 10
0 string/b #!/usr/bin/env a
>15 string/b >\0 %s script executable (binary data)
!:strength / 10
0 string/t #!\ /usr/bin/env a 0 string/t #!\ /usr/bin/env a
>16 string/t >\0 %s script text executable >16 string/t >\0 %s script text executable
!:strength / 10 !:strength / 10
0 string/b #!\ /usr/bin/env a
>16 string/b >\0 %s script executable (binary data)
!:strength / 10
# From: arno <arenevier@fdn.fr> # From: arno <arenevier@fdn.fr>
# mozilla xpconnect typelib # mozilla xpconnect typelib
# see http://www.mozilla.org/scriptable/typelib_file.html # see http://www.mozilla.org/scriptable/typelib_file.html

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: vax,v 1.8 2013/01/09 22:37:24 christos Exp $ # $File: vax,v 1.9 2014/04/30 21:41:02 christos Exp $
# vax: file(1) magic for VAX executable/object and APL workspace # vax: file(1) magic for VAX executable/object and APL workspace
# #
0 lelong 0101557 VAX single precision APL workspace 0 lelong 0101557 VAX single precision APL workspace
@ -21,7 +21,7 @@
# #
0 leshort 0570 VAX COFF executable 0 leshort 0570 VAX COFF executable
>12 lelong >0 not stripped >12 lelong >0 not stripped
>22 leshort >0 - version %ld >22 leshort >0 - version %d
0 leshort 0575 VAX COFF pure executable 0 leshort 0575 VAX COFF pure executable
>12 lelong >0 not stripped >12 lelong >0 not stripped
>22 leshort >0 - version %ld >22 leshort >0 - version %d

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: virtual,v 1.2 2011/11/22 13:30:05 christos Exp $ # $File: virtual,v 1.6 2014/05/07 21:25:41 christos Exp $
# From: James Nobis <quel@quelrod.net> # From: James Nobis <quel@quelrod.net>
# Microsoft hard disk images for: # Microsoft hard disk images for:
# Virtual Server # Virtual Server
@ -9,9 +9,115 @@
# .vhd # .vhd
0 string conectix Microsoft Disk Image, Virtual Server or Virtual PC 0 string conectix Microsoft Disk Image, Virtual Server or Virtual PC
# libvirt
# From: Philipp Hahn <hahn@univention.de>
0 string LibvirtQemudSave Libvirt QEMU Suspend Image
>0x10 lelong x \b, version %u
>0x14 lelong x \b, XML length %u
>0x18 lelong 1 \b, running
>0x1c lelong 1 \b, compressed
0 string LibvirtQemudPart Libvirt QEMU partial Suspend Image
# From: Alex Beregszaszi <alex@fsn.hu>
0 string/b COWD VMWare3
>4 byte 3 disk image
>>32 lelong x (%d/
>>36 lelong x \b%d/
>>40 lelong x \b%d)
>4 byte 2 undoable disk image
>>32 string >\0 (%s)
0 string/b VMDK VMware4 disk image
0 string/b KDMV VMware4 disk image
#--------------------------------------------------------------------
# Qemu Emulator Images
# Lines written by Friedrich Schwittay (f.schwittay@yousable.de)
# Updated by Adam Buchbinder (adam.buchbinder@gmail.com)
# Made by reading sources, reading documentation, and doing trial and error
# on existing QCOW files
0 string/b QFI\xFB QEMU QCOW Image
# Uncomment the following line to display Magic (only used for debugging
# this magic number)
#>0 string/b x , Magic: %s
# There are currently 2 Versions: "1" and "2".
# http://www.gnome.org/~markmc/qcow-image-format-version-1.html
>4 belong 1 (v1)
# Using the existence of the Backing File Offset to determine whether
# to read Backing File Information
>>12 belong >0 \b, has backing file (
# Note that this isn't a null-terminated string; the length is actually
# (16.L). Assuming a null-terminated string happens to work usually, but it
# may spew junk until it reaches a \0 in some cases.
>>>(12.L) string >\0 \bpath %s
# Modification time of the Backing File
# Really useful if you want to know if your backing
# file is still usable together with this image
>>>>20 bedate >0 \b, mtime %s)
>>>>20 default x \b)
# Size is stored in bytes in a big-endian u64.
>>24 bequad x \b, %lld bytes
# 1 for AES encryption, 0 for none.
>>36 belong 1 \b, AES-encrypted
# http://www.gnome.org/~markmc/qcow-image-format.html
>4 belong 2 (v2)
# Using the existence of the Backing File Offset to determine whether
# to read Backing File Information
>>8 bequad >0 \b, has backing file
# Note that this isn't a null-terminated string; the length is actually
# (16.L). Assuming a null-terminated string happens to work usually, but it
# may spew junk until it reaches a \0 in some cases. Also, since there's no
# .Q modifier, we just use the bottom four bytes as an offset. Note that if
# the file is over 4G, and the backing file path is stored after the first 4G,
# the wrong filename will be printed. (This should be (8.Q), when that syntax
# is introduced.)
>>>(12.L) string >\0 (path %s)
>>24 bequad x \b, %lld bytes
>>32 belong 1 \b, AES-encrypted
>4 belong 3 (v3)
# Using the existence of the Backing File Offset to determine whether
# to read Backing File Information
>>8 bequad >0 \b, has backing file
# Note that this isn't a null-terminated string; the length is actually
# (16.L). Assuming a null-terminated string happens to work usually, but it
# may spew junk until it reaches a \0 in some cases. Also, since there's no
# .Q modifier, we just use the bottom four bytes as an offset. Note that if
# the file is over 4G, and the backing file path is stored after the first 4G,
# the wrong filename will be printed. (This should be (8.Q), when that syntax
# is introduced.)
>>>(12.L) string >\0 (path %s)
>>24 bequad x \b, %lld bytes
>>32 belong 1 \b, AES-encrypted
>4 default x (unknown version)
0 string/b QEVM QEMU suspend to disk image
# QEMU QED Image
# http://wiki.qemu.org/Features/QED/Specification
0 string/b QED\0 QEMU QED Image
# VDI Image
# Sun xVM VirtualBox Disk Image # Sun xVM VirtualBox Disk Image
# From: Richard W.M. Jones <rich@annexia.org> # From: Richard W.M. Jones <rich@annexia.org>
# VirtualBox Disk Image # VirtualBox Disk Image
0x40 ulelong 0xbeda107f VirtualBox Disk Image 0x40 ulelong 0xbeda107f VirtualBox Disk Image
>0x44 uleshort >0 \b, major %u >0x44 uleshort >0 \b, major %u
>0x46 uleshort >0 \b, minor %u >0x46 uleshort >0 \b, minor %u
>0 string >\0 (%s)
>368 lequad x \b, %lld bytes
0 string/b Bochs\ Virtual\ HD\ Image Bochs disk image,
>32 string x type %s,
>48 string x subtype %s
0 lelong 0x02468ace Bochs Sparse disk image

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: vorbis,v 1.16 2009/09/19 16:28:13 christos Exp $ # $File: vorbis,v 1.18 2014/04/30 21:41:02 christos Exp $
# vorbis: file(1) magic for Ogg/Vorbis files # vorbis: file(1) magic for Ogg/Vorbis files
# #
# From Felix von Leitner <leitner@fefe.de> # From Felix von Leitner <leitner@fefe.de>
@ -56,13 +56,13 @@
>>>37 string/c xvid (XviD) >>>37 string/c xvid (XviD)
# --- First vorbis packet - general header --- # --- First vorbis packet - general header ---
>>28 string \x01vorbis \b, Vorbis audio, >>28 string \x01vorbis \b, Vorbis audio,
>>>35 lelong !0 UNKNOWN VERSION %lu, >>>35 lelong !0 UNKNOWN VERSION %u,
##>>>35 lelong 0 version 0, ##>>>35 lelong 0 version 0,
>>>35 lelong 0 >>>35 lelong 0
>>>>39 ubyte 1 mono, >>>>39 ubyte 1 mono,
>>>>39 ubyte 2 stereo, >>>>39 ubyte 2 stereo,
>>>>39 ubyte >2 %u channels, >>>>39 ubyte >2 %u channels,
>>>>40 lelong x %lu Hz >>>>40 lelong x %u Hz
# Minimal, nominal and maximal bitrates specified when encoding # Minimal, nominal and maximal bitrates specified when encoding
>>>>48 string <\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff \b, >>>>48 string <\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff \b,
# The above tests if at least one of these is specified: # The above tests if at least one of these is specified:
@ -72,13 +72,13 @@
# Vorbis 1.0 uses 0 instead of -1. # Vorbis 1.0 uses 0 instead of -1.
>>>>>>52 lelong !0 >>>>>>52 lelong !0
>>>>>>>52 lelong !-1000 >>>>>>>52 lelong !-1000
>>>>>>>>52 lelong x <%lu >>>>>>>>52 lelong x <%u
>>>>>48 lelong !-1 >>>>>48 lelong !-1
>>>>>>48 lelong x ~%lu >>>>>>48 lelong x ~%u
>>>>>44 lelong !-1 >>>>>44 lelong !-1
>>>>>>44 lelong !-1000 >>>>>>44 lelong !-1000
>>>>>>>44 lelong !0 >>>>>>>44 lelong !0
>>>>>>>>44 lelong x >%lu >>>>>>>>44 lelong x >%u
>>>>>48 string <\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff bps >>>>>48 string <\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff bps
# -- Second vorbis header packet - the comments # -- Second vorbis header packet - the comments
# A kludge to read the vendor string. It's a counted string, not a # A kludge to read the vendor string. It's a counted string, not a

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: windows,v 1.6 2013/04/19 20:12:29 christos Exp $ # $File: windows,v 1.8 2014/04/30 21:41:02 christos Exp $
# windows: file(1) magic for Microsoft Windows # windows: file(1) magic for Microsoft Windows
# #
# This file is mainly reserved for files where programs # This file is mainly reserved for files where programs
@ -36,7 +36,7 @@
>>0xf88 lelong 1 \b, full dump >>0xf88 lelong 1 \b, full dump
>>0xf88 lelong 2 \b, kernel dump >>0xf88 lelong 2 \b, kernel dump
>>0xf88 lelong 3 \b, small dump >>0xf88 lelong 3 \b, small dump
>>0x068 lelong x \b, %ld pages >>0x068 lelong x \b, %d pages
>4 string DU64 MS Windows 64bit crash dump >4 string DU64 MS Windows 64bit crash dump
>>0xf98 lelong 1 \b, full dump >>0xf98 lelong 1 \b, full dump
>>0xf98 lelong 2 \b, kernel dump >>0xf98 lelong 2 \b, kernel dump

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: xilinx,v 1.6 2013/11/19 23:15:13 christos Exp $ # $File: xilinx,v 1.7 2014/04/30 21:41:02 christos Exp $
# This is Aaron's attempt at a MAGIC file for Xilinx .bit files. # This is Aaron's attempt at a MAGIC file for Xilinx .bit files.
# Xilinx-Magic@RevRagnarok.com # Xilinx-Magic@RevRagnarok.com
# Got the info from FPGA-FAQ 0026 # Got the info from FPGA-FAQ 0026
@ -33,7 +33,7 @@
# Then 'e' # Then 'e'
>>>>>>>>>>>&1 string e >>>>>>>>>>>&1 string e
# And length of data # And length of data
>>>>>>>>>>>>&0 belong x - data length 0x%lx >>>>>>>>>>>>&0 belong x - data length 0x%x
# Raw bitstream files # Raw bitstream files
0 long 0xffffffff 0 long 0xffffffff

View File

@ -1,6 +1,6 @@
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# $File: xwindows,v 1.8 2013/02/08 17:25:57 christos Exp $ # $File: xwindows,v 1.9 2014/04/30 21:41:02 christos Exp $
# xwindows: file(1) magic for various X/Window system file formats. # xwindows: file(1) magic for various X/Window system file formats.
# Compiled X Keymap # Compiled X Keymap
@ -18,10 +18,10 @@
# Jaleo XFS files # Jaleo XFS files
0 long 395726 Jaleo XFS file 0 long 395726 Jaleo XFS file
>4 long x - version %ld >4 long x - version %d
>8 long x - [%ld - >8 long x - [%d -
>20 long x \b%ldx >20 long x \b%dx
>24 long x \b%ldx >24 long x \b%dx
>28 long 1008 \bYUV422] >28 long 1008 \bYUV422]
>28 long 1000 \bRGB24] >28 long 1000 \bRGB24]
@ -31,5 +31,5 @@
# http://cgit.freedesktop.org/xorg/lib/libXcursor/tree/include/X11/Xcursor/Xcursor.h # http://cgit.freedesktop.org/xorg/lib/libXcursor/tree/include/X11/Xcursor/Xcursor.h
0 string Xcur Xcursor data 0 string Xcur Xcursor data
!:mime image/x-xcursor !:mime image/x-xcursor
>10 leshort x version %hd >10 leshort x version %d
>>8 leshort x \b.%hd >>8 leshort x \b.%d

View File

@ -37,14 +37,14 @@
# Big-endian values # Big-endian values
8 string \000\000\000\002\365\272\313\254 ZFS shapshot (big-endian machine), 8 string \000\000\000\002\365\272\313\254 ZFS shapshot (big-endian machine),
>20 belong x version %lu, >20 belong x version %u,
>32 belong 0 type: NONE, >32 belong 0 type: NONE,
>32 belong 1 type: META, >32 belong 1 type: META,
>32 belong 2 type: ZFS, >32 belong 2 type: ZFS,
>32 belong 3 type: ZVOL, >32 belong 3 type: ZVOL,
>32 belong 4 type: OTHER, >32 belong 4 type: OTHER,
>32 belong 5 type: ANY, >32 belong 5 type: ANY,
>32 belong >5 type: UNKNOWN (%lu), >32 belong >5 type: UNKNOWN (%u),
>40 byte x destination GUID: %02X >40 byte x destination GUID: %02X
>41 byte x %02X >41 byte x %02X
>42 byte x %02X >42 byte x %02X
@ -67,14 +67,14 @@
# Little-endian values # Little-endian values
8 string \254\313\272\365\002\000\000\000 ZFS shapshot (little-endian machine), 8 string \254\313\272\365\002\000\000\000 ZFS shapshot (little-endian machine),
>16 lelong x version %lu, >16 lelong x version %u,
>32 lelong 0 type: NONE, >32 lelong 0 type: NONE,
>32 lelong 1 type: META, >32 lelong 1 type: META,
>32 lelong 2 type: ZFS, >32 lelong 2 type: ZFS,
>32 lelong 3 type: ZVOL, >32 lelong 3 type: ZVOL,
>32 lelong 4 type: OTHER, >32 lelong 4 type: OTHER,
>32 lelong 5 type: ANY, >32 lelong 5 type: ANY,
>32 lelong >5 type: UNKNOWN (%lu), >32 lelong >5 type: UNKNOWN (%u),
>47 byte x destination GUID: %02X >47 byte x destination GUID: %02X
>46 byte x %02X >46 byte x %02X
>45 byte x %02X >45 byte x %02X

View File

@ -8,10 +8,11 @@ import ctypes
from ctypes import * from ctypes import *
from ctypes.util import find_library from ctypes.util import find_library
def _init(): def _init():
""" """
Loads the shared library through ctypes and returns a library Loads the shared library through ctypes and returns a library
L{ctypes.CDLL} instance L{ctypes.CDLL} instance
""" """
return ctypes.cdll.LoadLibrary(find_library('magic')) return ctypes.cdll.LoadLibrary(find_library('magic'))
@ -46,6 +47,7 @@ MAGIC_NO_CHECK_ENCODING = NO_CHECK_ENCODING = 2097152
MAGIC_NO_CHECK_BUILTIN = NO_CHECK_BUILTIN = 4173824 MAGIC_NO_CHECK_BUILTIN = NO_CHECK_BUILTIN = 4173824
class magic_set(Structure): class magic_set(Structure):
pass pass
magic_set._fields_ = [] magic_set._fields_ = []
@ -99,6 +101,7 @@ _errno = _libraries['magic'].magic_errno
_errno.restype = c_int _errno.restype = c_int
_errno.argtypes = [magic_t] _errno.argtypes = [magic_t]
class Magic(object): class Magic(object):
def __init__(self, ms): def __init__(self, ms):
self._magic_t = ms self._magic_t = ms
@ -115,11 +118,14 @@ class Magic(object):
as a filename or None if an error occurred and the MAGIC_ERROR flag as a filename or None if an error occurred and the MAGIC_ERROR flag
is set. A call to errno() will return the numeric error code. is set. A call to errno() will return the numeric error code.
""" """
try: # attempt python3 approach first try: # attempt python3 approach first
bi = bytes(filename, 'utf-8') if isinstance(filename, bytes):
bi = filename
else:
bi = bytes(filename, 'utf-8')
return str(_file(self._magic_t, bi), 'utf-8') return str(_file(self._magic_t, bi), 'utf-8')
except: except:
return _file(self._magic_t, filename) return _file(self._magic_t, filename.encode('utf-8'))
def descriptor(self, fd): def descriptor(self, fd):
""" """
@ -133,7 +139,7 @@ class Magic(object):
as a buffer or None if an error occurred and the MAGIC_ERROR flag as a buffer or None if an error occurred and the MAGIC_ERROR flag
is set. A call to errno() will return the numeric error code. is set. A call to errno() will return the numeric error code.
""" """
try: # attempt python3 approach first try: # attempt python3 approach first
return str(_buffer(self._magic_t, buf, len(buf)), 'utf-8') return str(_buffer(self._magic_t, buf, len(buf)), 'utf-8')
except: except:
return _buffer(self._magic_t, buf, len(buf)) return _buffer(self._magic_t, buf, len(buf))
@ -143,16 +149,16 @@ class Magic(object):
Returns a textual explanation of the last error or None Returns a textual explanation of the last error or None
if there was no error. if there was no error.
""" """
try: # attempt python3 approach first try: # attempt python3 approach first
return str(_error(self._magic_t), 'utf-8') return str(_error(self._magic_t), 'utf-8')
except: except:
return _error(self._magic_t) return _error(self._magic_t)
def setflags(self, flags): def setflags(self, flags):
""" """
Set flags on the magic object which determine how magic checking behaves; Set flags on the magic object which determine how magic checking
a bitwise OR of the flags described in libmagic(3), but without the MAGIC_ behaves; a bitwise OR of the flags described in libmagic(3), but
prefix. without the MAGIC_ prefix.
Returns -1 on systems that don't support utime(2) or utimes(2) Returns -1 on systems that don't support utime(2) or utimes(2)
when PRESERVE_ATIME is set. when PRESERVE_ATIME is set.
@ -161,10 +167,10 @@ class Magic(object):
def load(self, filename=None): def load(self, filename=None):
""" """
Must be called to load entries in the colon separated list of database files Must be called to load entries in the colon separated list of database
passed as argument or the default database file if no argument before files passed as argument or the default database file if no argument
any magic queries can be performed. before any magic queries can be performed.
Returns 0 on success and -1 on failure. Returns 0 on success and -1 on failure.
""" """
return _load(self._magic_t, filename) return _load(self._magic_t, filename)
@ -196,7 +202,7 @@ class Magic(object):
Returns 0 on success and -1 on failure. Returns 0 on success and -1 on failure.
""" """
return _list(self._magic_t, dbs) return _list(self._magic_t, dbs)
def errno(self): def errno(self):
""" """
Returns a numeric error code. If return value is 0, an internal Returns a numeric error code. If return value is 0, an internal
@ -206,6 +212,7 @@ class Magic(object):
""" """
return _errno(self._magic_t) return _errno(self._magic_t)
def open(flags): def open(flags):
""" """
Returns a magic object on success and None on failure. Returns a magic object on success and None on failure.

View File

@ -1,5 +1,4 @@
/* $NetBSD: apptype.c,v 1.1.1.2 2011/09/16 20:37:39 christos Exp $ */ /* $NetBSD: apptype.c,v 1.1.1.3 2014/06/13 01:48:23 christos Exp $ */
/* /*
* Adapted from: apptype.c, Written by Eberhard Mattes and put into the * Adapted from: apptype.c, Written by Eberhard Mattes and put into the
* public domain * public domain
@ -32,7 +31,7 @@
#if 0 #if 0
FILE_RCSID("@(#)$File: apptype.c,v 1.13 2011/09/07 21:57:15 christos Exp $") FILE_RCSID("@(#)$File: apptype.c,v 1.13 2011/09/07 21:57:15 christos Exp $")
#else #else
__RCSID("$NetBSD: apptype.c,v 1.1.1.2 2011/09/16 20:37:39 christos Exp $"); __RCSID("$NetBSD: apptype.c,v 1.1.1.3 2014/06/13 01:48:23 christos Exp $");
#endif #endif
#endif /* lint */ #endif /* lint */

View File

@ -1,5 +1,4 @@
/* $NetBSD: ascmagic.c,v 1.1.1.5 2013/12/01 19:28:16 christos Exp $ */ /* $NetBSD: ascmagic.c,v 1.1.1.6 2014/06/13 01:48:22 christos Exp $ */
/* /*
* Copyright (c) Ian F. Darwin 1986-1995. * Copyright (c) Ian F. Darwin 1986-1995.
* Software written by Ian F. Darwin and others; * Software written by Ian F. Darwin and others;
@ -38,9 +37,9 @@
#ifndef lint #ifndef lint
#if 0 #if 0
FILE_RCSID("@(#)$File: ascmagic.c,v 1.87 2013/09/17 15:51:22 christos Exp $") FILE_RCSID("@(#)$File: ascmagic.c,v 1.88 2014/02/12 23:20:53 christos Exp $")
#else #else
__RCSID("$NetBSD: ascmagic.c,v 1.1.1.5 2013/12/01 19:28:16 christos Exp $"); __RCSID("$NetBSD: ascmagic.c,v 1.1.1.6 2014/06/13 01:48:22 christos Exp $");
#endif #endif
#endif /* lint */ #endif /* lint */
@ -153,7 +152,7 @@ file_ascmagic_with_encoding(struct magic_set *ms, const unsigned char *buf,
== NULL) == NULL)
goto done; goto done;
if ((rv = file_softmagic(ms, utf8_buf, if ((rv = file_softmagic(ms, utf8_buf,
(size_t)(utf8_end - utf8_buf), TEXTTEST, text)) == 0) (size_t)(utf8_end - utf8_buf), 0, TEXTTEST, text)) == 0)
rv = -1; rv = -1;
} }

View File

@ -1,5 +1,4 @@
/* $NetBSD: asctime_r.c,v 1.1.1.1 2013/01/03 16:27:51 christos Exp $ */ /* $NetBSD: asctime_r.c,v 1.1.1.2 2014/06/13 01:48:21 christos Exp $ */
/* $File: asctime_r.c,v 1.1 2012/05/15 17:14:36 christos Exp $ */ /* $File: asctime_r.c,v 1.1 2012/05/15 17:14:36 christos Exp $ */
#include "file.h" #include "file.h"
@ -7,7 +6,7 @@
#if 0 #if 0
FILE_RCSID("@(#)$File: asctime_r.c,v 1.1 2012/05/15 17:14:36 christos Exp $") FILE_RCSID("@(#)$File: asctime_r.c,v 1.1 2012/05/15 17:14:36 christos Exp $")
#else #else
__RCSID("$NetBSD: asctime_r.c,v 1.1.1.1 2013/01/03 16:27:51 christos Exp $"); __RCSID("$NetBSD: asctime_r.c,v 1.1.1.2 2014/06/13 01:48:21 christos Exp $");
#endif #endif
#endif /* lint */ #endif /* lint */
#include <time.h> #include <time.h>

View File

@ -1,5 +1,4 @@
/* $NetBSD: asprintf.c,v 1.1.1.2 2011/05/12 20:46:50 christos Exp $ */ /* $NetBSD: asprintf.c,v 1.1.1.3 2014/06/13 01:48:21 christos Exp $ */
/* /*
* Copyright (c) Ian F. Darwin 1986-1995. * Copyright (c) Ian F. Darwin 1986-1995.
* Software written by Ian F. Darwin and others; * Software written by Ian F. Darwin and others;
@ -34,7 +33,7 @@
#if 0 #if 0
FILE_RCSID("@(#)$File: asprintf.c,v 1.4 2010/07/21 16:47:17 christos Exp $") FILE_RCSID("@(#)$File: asprintf.c,v 1.4 2010/07/21 16:47:17 christos Exp $")
#else #else
__RCSID("$NetBSD: asprintf.c,v 1.1.1.2 2011/05/12 20:46:50 christos Exp $"); __RCSID("$NetBSD: asprintf.c,v 1.1.1.3 2014/06/13 01:48:21 christos Exp $");
#endif #endif
#endif #endif

View File

@ -1,5 +1,4 @@
/* $NetBSD: cdf.h,v 1.1.1.4 2013/01/03 16:27:53 christos Exp $ */ /* $NetBSD: cdf.h,v 1.1.1.5 2014/06/13 01:48:23 christos Exp $ */
/*- /*-
* Copyright (c) 2008 Christos Zoulas * Copyright (c) 2008 Christos Zoulas
* All rights reserved. * All rights reserved.
@ -296,9 +295,13 @@ int cdf_read_dir(const cdf_info_t *, const cdf_header_t *, const cdf_sat_t *,
int cdf_read_ssat(const cdf_info_t *, const cdf_header_t *, const cdf_sat_t *, int cdf_read_ssat(const cdf_info_t *, const cdf_header_t *, const cdf_sat_t *,
cdf_sat_t *); cdf_sat_t *);
int cdf_read_short_stream(const cdf_info_t *, const cdf_header_t *, int cdf_read_short_stream(const cdf_info_t *, const cdf_header_t *,
const cdf_sat_t *, const cdf_dir_t *, cdf_stream_t *); const cdf_sat_t *, const cdf_dir_t *, cdf_stream_t *,
const cdf_directory_t **);
int cdf_read_property_info(const cdf_stream_t *, const cdf_header_t *, uint32_t, int cdf_read_property_info(const cdf_stream_t *, const cdf_header_t *, uint32_t,
cdf_property_info_t **, size_t *, size_t *); cdf_property_info_t **, size_t *, size_t *);
int cdf_read_user_stream(const cdf_info_t *, const cdf_header_t *,
const cdf_sat_t *, const cdf_sat_t *, const cdf_stream_t *,
const cdf_dir_t *, const char *, cdf_stream_t *);
int cdf_read_summary_info(const cdf_info_t *, const cdf_header_t *, int cdf_read_summary_info(const cdf_info_t *, const cdf_header_t *,
const cdf_sat_t *, const cdf_sat_t *, const cdf_stream_t *, const cdf_sat_t *, const cdf_sat_t *, const cdf_stream_t *,
const cdf_dir_t *, cdf_stream_t *); const cdf_dir_t *, cdf_stream_t *);

View File

@ -1,5 +1,4 @@
/* $NetBSD: ctime_r.c,v 1.1.1.1 2013/01/03 16:27:51 christos Exp $ */ /* $NetBSD: ctime_r.c,v 1.1.1.2 2014/06/13 01:48:21 christos Exp $ */
/* $File: ctime_r.c,v 1.1 2012/05/15 17:14:36 christos Exp $ */ /* $File: ctime_r.c,v 1.1 2012/05/15 17:14:36 christos Exp $ */
#include "file.h" #include "file.h"
@ -7,7 +6,7 @@
#if 0 #if 0
FILE_RCSID("@(#)$File: ctime_r.c,v 1.1 2012/05/15 17:14:36 christos Exp $") FILE_RCSID("@(#)$File: ctime_r.c,v 1.1 2012/05/15 17:14:36 christos Exp $")
#else #else
__RCSID("$NetBSD: ctime_r.c,v 1.1.1.1 2013/01/03 16:27:51 christos Exp $"); __RCSID("$NetBSD: ctime_r.c,v 1.1.1.2 2014/06/13 01:48:21 christos Exp $");
#endif #endif
#endif /* lint */ #endif /* lint */
#include <time.h> #include <time.h>

Some files were not shown because too many files have changed in this diff Show More