summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog12
-rw-r--r--configure.in2
-rw-r--r--magic/Magdir/animation242
-rw-r--r--magic/Magdir/archive3
-rw-r--r--magic/Magdir/database9
-rw-r--r--magic/Magdir/filesystems253
-rw-r--r--magic/Magdir/gnu6
-rw-r--r--magic/Magdir/images8
-rw-r--r--magic/Magdir/mail.news5
-rw-r--r--magic/Magdir/msdos6
-rw-r--r--magic/Magdir/printer4
-rw-r--r--magic/Magdir/varied.out3
-rw-r--r--magic/magic.mime26
13 files changed, 445 insertions, 134 deletions
diff --git a/ChangeLog b/ChangeLog
index 62143e10..d5f0ba7d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2005-01-12 00:00 Stepan Kasal <kasal@ucw.cz>
+
+ * src/ascmagic.c (file_ascmagic): Fix three bugs about text files:
+ If a CRLF text file happens to have CR at offset HOWMANY - 1
+ (currently 0xffff), it should not be counted as CR line
+ terminator.
+ If a line has length exactly MAXLINELEN, it should not yet be
+ treated as a ``very long line'', as MAXLINELEN is ``longest sane
+ line length''.
+ With CRLF, the line length was not computed correctly, and even
+ lines of length MAXLINELEN - 1 were treated as ``very long''.
+
2004-12-07 14:15 Christos Zoulas <christos@zoulas.com>
* bzip2 needs a lot of input buffer space on some files
diff --git a/configure.in b/configure.in
index 14aefdb4..479c4d25 100644
--- a/configure.in
+++ b/configure.in
@@ -1,7 +1,7 @@
dnl Process this file with autoconf to produce a configure script.
AC_INIT
AC_CONFIG_SRCDIR([src/file.c])
-AM_INIT_AUTOMAKE(file, 4.12)
+AM_INIT_AUTOMAKE(file, 4.13)
AM_CONFIG_HEADER([config.h])
AM_MAINTAINER_MODE
diff --git a/magic/Magdir/animation b/magic/Magdir/animation
index 08f92ae8..c6698306 100644
--- a/magic/Magdir/animation
+++ b/magic/Magdir/animation
@@ -6,13 +6,58 @@
# MPEG, FLI, DL originally from vax@ccwf.cc.utexas.edu (VaX#n8)
# FLC, SGI, Apple originally from Daniel Quinlan (quinlan@yggdrasil.com)
+# SGI and Apple formats
+0 string MOVI Silicon Graphics movie file
+4 string moov Apple QuickTime
+>12 string mvhd \b movie (fast start)
+>12 string mdra \b URL
+>12 string cmov \b movie (fast start, compressed header)
+>12 string rmra \b multiple URLs
+4 string mdat Apple QuickTime movie (unoptimized)
+4 string wide Apple QuickTime movie (unoptimized)
+4 string skip Apple QuickTime movie (modified)
+4 string free Apple QuickTime movie (modified)
+4 string idsc Apple QuickTime image (fast start)
+4 string idat Apple QuickTime image (unoptimized)
+4 string pckg Apple QuickTime compressed archive
+4 string/B jP JPEG 2000 image
+4 string ftyp ISO Media
+>8 string isom \b, MPEG v4 system, version 1
+>8 string iso2 \b, MPEG v4 system, part 12 revision
+>8 string mp41 \b, MPEG v4 system, version 1
+>8 string mp42 \b, MPEG v4 system, version 2
+>8 string mp7t \b, MPEG v4 system, MPEG v7 XML
+>8 string mp7b \b, MPEG v4 system, MPEG v7 binary XML
+>8 string/B jp2 \b, JPEG 2000
+>8 string 3gp \b, MPEG v4 system, 3GPP
+>>11 byte 4 \b v4 (H.263/AMR GSM 6.10)
+>>11 byte 5 \b v5 (H.263/AMR GSM 6.10)
+>>11 byte 6 \b v6 (ITU H.264/AMR GSM 6.10)
+>8 string mmp4 \b, MPEG v4 system, 3GPP Mobile
+>8 string avc1 \b, MPEG v4 system, 3GPP JVT AVC
+>8 string/B M4A \b, MPEG v4 system, iTunes AAC-LC
+>8 string/B M4P \b, MPEG v4 system, iTunes AES encrypted
+>8 string/B M4B \b, MPEG v4 system, iTunes bookmarked
+>8 string/B qt \b, Apple QuickTime movie
+
# MPEG sequences
# Scans for all common MPEG header start codes
+0 belong 0x00000001 JVT NAL sequence
+>4 byte&0x1F 0x07 \b, H.264 video
+>>5 byte 66 \b, baseline
+>>5 byte 77 \b, main
+>>5 byte 88 \b, extended
+>>7 byte x \b @ L %u
0 belong&0xFFFFFF00 0x00000100 MPEG sequence
>3 byte 0xBA
>>4 byte &0x40 \b, v2, program multiplex
>>4 byte ^0x40 \b, v1, system multiplex
>3 byte 0xBB \b, v1/2, multiplex (missing pack header)
+>3 byte&0x1F 0x07 \b, H.264 video
+>>4 byte 66 \b, baseline
+>>4 byte 77 \b, main
+>>4 byte 88 \b, extended
+>>6 byte x \b @ L %u
>3 byte 0xB0 \b, v4
>>5 belong 0x000001B5
>>>9 byte &0x80
@@ -20,11 +65,10 @@
>>>>10 byte&0xF0 32 \b, still texture
>>>>10 byte&0xF0 48 \b, mesh
>>>>10 byte&0xF0 64 \b, face
->>>9 byte ^0x80
->>>>9 byte&0xF8 8 \b, video
->>>>9 byte&0xF8 16 \b, still texture
->>>>9 byte&0xF8 24 \b, mesh
->>>>9 byte&0xF8 32 \b, face
+>>>9 byte&0xF8 8 \b, video
+>>>9 byte&0xF8 16 \b, still texture
+>>>9 byte&0xF8 24 \b, mesh
+>>>9 byte&0xF8 32 \b, face
>>4 byte 1 \b, simple @ L1
>>4 byte 2 \b, simple @ L2
>>4 byte 3 \b, simple @ L3
@@ -89,11 +133,10 @@
>>>5 byte&0xF0 32 \b, still texture (missing profile header)
>>>5 byte&0xF0 48 \b, mesh (missing profile header)
>>>5 byte&0xF0 64 \b, face (missing profile header)
->>4 byte ^0x80
->>>4 byte&0xF8 8 \b, video (missing profile header)
->>>4 byte&0xF8 16 \b, still texture (missing profile header)
->>>4 byte&0xF8 24 \b, mesh (missing profile header)
->>>4 byte&0xF8 32 \b, face (missing profile header)
+>>4 byte&0xF8 8 \b, video (missing profile header)
+>>4 byte&0xF8 16 \b, still texture (missing profile header)
+>>4 byte&0xF8 24 \b, mesh (missing profile header)
+>>4 byte&0xF8 32 \b, face (missing profile header)
>3 byte 0xB3
>>12 belong 0x000001B8 \b, v1, progressive Y'CbCr 4:2:0 video
>>12 belong 0x000001B2 \b, v1, progressive Y'CbCr 4:2:0 video
@@ -131,23 +174,23 @@
>>>>>145 byte&0x06 2 \b Y'CbCr 4:2:0 video
>>>>>145 byte&0x06 4 \b Y'CbCr 4:2:2 video
>>>>>145 byte&0x06 6 \b Y'CbCr 4:4:4 video
->>>76 belong 0x000001B8 \b, v1, progressive Y'CbCr 4:2:0 video
->>>76 belong 0x000001B2 \b, v1, progressive Y'CbCr 4:2:0 video
->>>76 belong 0x000001B5 \b, v2,
->>>80 byte&0x0F 1 \b HP
->>>80 byte&0x0F 2 \b Spt
->>>80 byte&0x0F 3 \b SNR
->>>80 byte&0x0F 4 \b MP
->>>80 byte&0x0F 5 \b SP
->>>81 byte&0xF0 64 \b@HL
->>>81 byte&0xF0 96 \b@H-14
->>>81 byte&0xF0 128 \b@ML
->>>81 byte&0xF0 160 \b@LL
->>>81 byte &0x08 \b progressive
->>>81 byte ^0x08 \b interlaced
->>>81 byte&0x06 2 \b Y'CbCr 4:2:0 video
->>>81 byte&0x06 4 \b Y'CbCr 4:2:2 video
->>>81 byte&0x06 6 \b Y'CbCr 4:4:4 video
+>>76 belong 0x000001B8 \b, v1, progressive Y'CbCr 4:2:0 video
+>>76 belong 0x000001B2 \b, v1, progressive Y'CbCr 4:2:0 video
+>>76 belong 0x000001B5 \b, v2,
+>>>80 byte&0x0F 1 \b HP
+>>>80 byte&0x0F 2 \b Spt
+>>>80 byte&0x0F 3 \b SNR
+>>>80 byte&0x0F 4 \b MP
+>>>80 byte&0x0F 5 \b SP
+>>>81 byte&0xF0 64 \b@HL
+>>>81 byte&0xF0 96 \b@H-14
+>>>81 byte&0xF0 128 \b@ML
+>>>81 byte&0xF0 160 \b@LL
+>>>81 byte &0x08 \b progressive
+>>>81 byte ^0x08 \b interlaced
+>>>81 byte&0x06 2 \b Y'CbCr 4:2:0 video
+>>>81 byte&0x06 4 \b Y'CbCr 4:2:2 video
+>>>81 byte&0x06 6 \b Y'CbCr 4:4:4 video
>>4 belong&0xFFFFFF00 0x78043800 \b, HD-TV 1920P
>>>7 byte&0xF0 0x10 \b, 16:9
>>4 belong&0xFFFFFF00 0x50002D00 \b, SD-TV 1280I
@@ -234,13 +277,13 @@
>3 byte&0xC0 0x40 \b, JntStereo
>3 byte&0xC0 0x80 \b, 2x Monaural
>3 byte&0xC0 0xC0 \b, Monaural
-#>1 byte ^0x01 \b, Data Verify
-#>2 byte &0x02 \b, Packet Pad
-#>2 byte &0x01 \b, Custom Flag
-#>3 byte &0x08 \b, Copyrighted
-#>3 byte &0x04 \b, Original Source
-#>3 byte&0x03 1 \b, NR: 50/15 ms
-#>3 byte&0x03 3 \b, NR: CCIT J.17
+#>1 byte ^0x01 \b, Data Verify
+#>2 byte &0x02 \b, Packet Pad
+#>2 byte &0x01 \b, Custom Flag
+#>3 byte &0x08 \b, Copyrighted
+#>3 byte &0x04 \b, Original Source
+#>3 byte&0x03 1 \b, NR: 50/15 ms
+#>3 byte&0x03 3 \b, NR: CCIT J.17
# MP2, M1A
0 beshort&0xFFFE 0xFFFC MPEG ADTS, layer II, v1
@@ -268,13 +311,13 @@
>3 byte&0xC0 0x40 \b, JntStereo
>3 byte&0xC0 0x80 \b, 2x Monaural
>3 byte&0xC0 0xC0 \b, Monaural
-#>1 byte ^0x01 \b, Data Verify
-#>2 byte &0x02 \b, Packet Pad
-#>2 byte &0x01 \b, Custom Flag
-#>3 byte &0x08 \b, Copyrighted
-#>3 byte &0x04 \b, Original Source
-#>3 byte&0x03 1 \b, NR: 50/15 ms
-#>3 byte&0x03 3 \b, NR: CCIT J.17
+#>1 byte ^0x01 \b, Data Verify
+#>2 byte &0x02 \b, Packet Pad
+#>2 byte &0x01 \b, Custom Flag
+#>3 byte &0x08 \b, Copyrighted
+#>3 byte &0x04 \b, Original Source
+#>3 byte&0x03 1 \b, NR: 50/15 ms
+#>3 byte&0x03 3 \b, NR: CCIT J.17
# MPA, M1A
0 beshort&0xFFFE 0xFFFE MPEG ADTS, layer I, v1
@@ -302,13 +345,13 @@
>3 byte&0xC0 0x40 \b, JntStereo
>3 byte&0xC0 0x80 \b, 2x Monaural
>3 byte&0xC0 0xC0 \b, Monaural
-#>1 byte ^0x01 \b, Data Verify
-#>2 byte &0x02 \b, Packet Pad
-#>2 byte &0x01 \b, Custom Flag
-#>3 byte &0x08 \b, Copyrighted
-#>3 byte &0x04 \b, Original Source
-#>3 byte&0x03 1 \b, NR: 50/15 ms
-#>3 byte&0x03 3 \b, NR: CCIT J.17
+#>1 byte ^0x01 \b, Data Verify
+#>2 byte &0x02 \b, Packet Pad
+#>2 byte &0x01 \b, Custom Flag
+#>3 byte &0x08 \b, Copyrighted
+#>3 byte &0x04 \b, Original Source
+#>3 byte&0x03 1 \b, NR: 50/15 ms
+#>3 byte&0x03 3 \b, NR: CCIT J.17
# MP3, M2A
0 beshort&0xFFFE 0xFFF2 MPEG ADTS, layer III, v2
@@ -336,13 +379,13 @@
>3 byte&0xC0 0x40 \b, JntStereo
>3 byte&0xC0 0x80 \b, 2x Monaural
>3 byte&0xC0 0xC0 \b, Monaural
-#>1 byte ^0x01 \b, Data Verify
-#>2 byte &0x02 \b, Packet Pad
-#>2 byte &0x01 \b, Custom Flag
-#>3 byte &0x08 \b, Copyrighted
-#>3 byte &0x04 \b, Original Source
-#>3 byte&0x03 1 \b, NR: 50/15 ms
-#>3 byte&0x03 3 \b, NR: CCIT J.17
+#>1 byte ^0x01 \b, Data Verify
+#>2 byte &0x02 \b, Packet Pad
+#>2 byte &0x01 \b, Custom Flag
+#>3 byte &0x08 \b, Copyrighted
+#>3 byte &0x04 \b, Original Source
+#>3 byte&0x03 1 \b, NR: 50/15 ms
+#>3 byte&0x03 3 \b, NR: CCIT J.17
# MP2, M2A
0 beshort&0xFFFE 0xFFF4 MPEG ADTS, layer II, v2
@@ -370,13 +413,13 @@
>3 byte&0xC0 0x40 \b, JntStereo
>3 byte&0xC0 0x80 \b, 2x Monaural
>3 byte&0xC0 0xC0 \b, Monaural
-#>1 byte ^0x01 \b, Data Verify
-#>2 byte &0x02 \b, Packet Pad
-#>2 byte &0x01 \b, Custom Flag
-#>3 byte &0x08 \b, Copyrighted
-#>3 byte &0x04 \b, Original Source
-#>3 byte&0x03 1 \b, NR: 50/15 ms
-#>3 byte&0x03 3 \b, NR: CCIT J.17
+#>1 byte ^0x01 \b, Data Verify
+#>2 byte &0x02 \b, Packet Pad
+#>2 byte &0x01 \b, Custom Flag
+#>3 byte &0x08 \b, Copyrighted
+#>3 byte &0x04 \b, Original Source
+#>3 byte&0x03 1 \b, NR: 50/15 ms
+#>3 byte&0x03 3 \b, NR: CCIT J.17
# MPA, M2A
0 beshort&0xFFFE 0xFFF6 MPEG ADTS, layer I, v2
@@ -404,13 +447,13 @@
>3 byte&0xC0 0x40 \b, JntStereo
>3 byte&0xC0 0x80 \b, 2x Monaural
>3 byte&0xC0 0xC0 \b, Monaural
-#>1 byte ^0x01 \b, Data Verify
-#>2 byte &0x02 \b, Packet Pad
-#>2 byte &0x01 \b, Custom Flag
-#>3 byte &0x08 \b, Copyrighted
-#>3 byte &0x04 \b, Original Source
-#>3 byte&0x03 1 \b, NR: 50/15 ms
-#>3 byte&0x03 3 \b, NR: CCIT J.17
+#>1 byte ^0x01 \b, Data Verify
+#>2 byte &0x02 \b, Packet Pad
+#>2 byte &0x01 \b, Custom Flag
+#>3 byte &0x08 \b, Copyrighted
+#>3 byte &0x04 \b, Original Source
+#>3 byte&0x03 1 \b, NR: 50/15 ms
+#>3 byte&0x03 3 \b, NR: CCIT J.17
# MP3, M25A
0 beshort&0xFFFE 0xFFE2 MPEG ADTS, layer III, v2.5
@@ -438,13 +481,13 @@
>3 byte&0xC0 0x40 \b, JntStereo
>3 byte&0xC0 0x80 \b, 2x Monaural
>3 byte&0xC0 0xC0 \b, Monaural
-#>1 byte ^0x01 \b, Data Verify
-#>2 byte &0x02 \b, Packet Pad
-#>2 byte &0x01 \b, Custom Flag
-#>3 byte &0x08 \b, Copyrighted
-#>3 byte &0x04 \b, Original Source
-#>3 byte&0x03 1 \b, NR: 50/15 ms
-#>3 byte&0x03 3 \b, NR: CCIT J.17
+#>1 byte ^0x01 \b, Data Verify
+#>2 byte &0x02 \b, Packet Pad
+#>2 byte &0x01 \b, Custom Flag
+#>3 byte &0x08 \b, Copyrighted
+#>3 byte &0x04 \b, Original Source
+#>3 byte&0x03 1 \b, NR: 50/15 ms
+#>3 byte&0x03 3 \b, NR: CCIT J.17
# AAC (aka MPEG-2 NBC audio) and MPEG-4 audio
@@ -474,13 +517,13 @@
# Live or stored single AAC stream (used with MPEG-2 systems)
0 beshort&0xFFF6 0xFFF0 MPEG ADTS, AAC
->1 byte ^0x08 \b, v2
->1 byte &0x08 \b, v4
+>1 byte &0x08 \b, v2
+>1 byte ^0x08 \b, v4
# profile
>>2 byte &0xC0 \b LTP
->2 byte&0xc0 0x00 \b, Main
->2 byte&0xc0 0x40 \b, LC
->2 byte&0xc0 0x80 \b, SSR
+>2 byte&0xc0 0x00 \b Main
+>2 byte&0xc0 0x40 \b LC
+>2 byte&0xc0 0x80 \b SSR
# timing
>2 byte&0x3c 0x00 \b, 96 kHz
>2 byte&0x3c 0x04 \b, 88.2 kHz
@@ -494,7 +537,7 @@
>2 byte&0x3c 0x24 \b, 12 kHz
>2 byte&0x3c 0x28 \b, 11.025 kHz
>2 byte&0x3c 0x2c \b, 8 kHz
-# channels/options
+# channels
>2 beshort&0x01c0 0x0040 \b, monaural
>2 beshort&0x01c0 0x0080 \b, stereo
>2 beshort&0x01c0 0x00c0 \b, stereo + center
@@ -564,35 +607,6 @@
# \003. Most of them start with non-null values at hex offset 0x34 or so.
#0 string \3\0\0\0\0\0\0\0\0\0\0\0 DL version 3
-# SGI formats
-0 string MOVI Silicon Graphics movie file
-
-# Apple Quicktime and ISO types
-4 string moov Apple QuickTime
->12 string mvhd \b movie (fast start)
->12 string mdra \b URL
->12 string cmov \b movie (fast start, compressed header)
->12 string rmra \b multiple URLs
-4 string mdat Apple QuickTime movie (unoptimized)
-4 string wide Apple QuickTime movie (unoptimized)
-4 string skip Apple QuickTime movie (modified)
-4 string free Apple QuickTime movie (modified)
-4 string idsc Apple QuickTime image (fast start)
-4 string idat Apple QuickTime image (unoptimized)
-4 string pckg Apple QuickTime compressed archive
-4 string/B jP JPEG 2000 image
-4 string ftyp ISO Media
->8 string isom \b, MPEG v4 system
->8 string mp41 \b, MPEG v4 system, version 1
->8 string mp42 \b, MPEG v4 system, version 2
->8 string/B jp2 \b, JPEG 2000 image
->8 string 3gp \b, MPEG v4 system, 3GPP (H.263/AMR)
->8 string mmp4 \b, MPEG v4 system, Mobile
->8 string/B M4A \b, MPEG v4 system, iTunes AAC-LC
->8 string/B M4P \b, MPEG v4 system, ISMA encrypted AAC-LC
->8 string/B M4B \b, MPEG v4 system, iTunes AAC-LC/AMR
->8 string/B qt \b, Apple QuickTime movie
-
# iso 13818 transport stream
#
# from Oskar Schirmer <schirmer@scara.com> Feb 3, 2001 (ISO 13818.1)
@@ -654,3 +668,9 @@
>0x26 ubeshort x %dµs,
>0x42 ubeshort 0 no audio
>0x42 ubeshort >0 %dHz audio
+
+# From: "Stefan A. Haubenthal" <polluks@web.de>
+0 string DVDVIDEO-VTS Video title set,
+>0x21 byte x v%x
+0 string DVDVIDEO-VMG Video manager,
+>0x21 byte x v%x
diff --git a/magic/Magdir/archive b/magic/Magdir/archive
index 84a55a3e..f545bd80 100644
--- a/magic/Magdir/archive
+++ b/magic/Magdir/archive
@@ -320,3 +320,6 @@
>>0x1 string >\0 Version %s
>>0x2A string >\0 : %s
+# DR-DOS 7.03 Packed File *.??_
+0 string Packed\ File\ Personal NetWare Packed File
+>12 string x \b, was "%.12s"
diff --git a/magic/Magdir/database b/magic/Magdir/database
index f31aee50..aef8469c 100644
--- a/magic/Magdir/database
+++ b/magic/Magdir/database
@@ -67,6 +67,15 @@
>16 belong >0 (Queue, version %d, big-endian)
12 lelong 0x00042253 Berkeley DB
>16 lelong >0 (Queue, version %d, little-endian)
+
+# From Max Bowsher.
+12 long 0x00040988 Berkeley DB
+>16 long >0 (Log, version %d, native byte-order)
+12 belong 0x00040988 Berkeley DB
+>16 belong >0 (Log, version %d, big-endian)
+12 lelong 0x00040988 Berkeley DB
+>16 lelong >0 (Log, version %d, little-endian)
+
#
#
# Round Robin Database Tool by Tobias Oetiker <oetiker@ee.ethz.ch>
diff --git a/magic/Magdir/filesystems b/magic/Magdir/filesystems
index 5a4ac236..41fdc262 100644
--- a/magic/Magdir/filesystems
+++ b/magic/Magdir/filesystems
@@ -23,14 +23,241 @@
>0770 long x %ld blocks
# Is there a boot block written 1 sector in?
>512 belong&077777777 0600407 \b, boot block present
+# DOS Emulator image is 128 byte header + harddisc image
+0 string DOSEMU\0
+>0x27E leshort 0xAA55 DOS Emulator image
0x1FE leshort 0xAA55 x86 boot sector
>2 string OSBS \b, OS/BS MBR
# J\xf6rg Jenderek <joerg.jenderek@gmx.net>
>0x8C string Invalid\ partition\ table \b, MS-DOS MBR
->0x9D string Invalid\ partition\ table \b, DR-DOS MBR, version 7.01 to 7.03
+# dr-dos with some upper-, lowercase variants
+>0x9D string Invalid\ partition\ table$
+>>181 string No\ Operating\ System$
+>>>201 string Operating\ System\ load\ error$ \b, DR-DOS MBR, Version 7.01 to 7.03
+>0x9D string Invalid\ partition\ table$
+>>181 string No\ operating\ system$
+>>>201 string Operating\ system\ load\ error$ \b, DR-DOS MBR, Version 7.01 to 7.03
+>342 string Invalid\ partition\ table$
+>>366 string No\ operating\ system$
+>>>386 string Operating\ system\ load\ error$ \b, DR-DOS MBR, version 7.01 to 7.03
+>295 string NEWLDR\0
+>>302 string Bad\ PT\ $
+>>>310 string No\ OS\ $
+>>>>317 string OS\ load\ err$
+>>>>>329 string Moved\ or\ missing\ IBMBIO.LDR\n\r
+>>>>>>358 string Press\ any\ key\ to\ continue.\n\r$
+>>>>>>>387 string Copyright\ (c)\ 1984,1998
+>>>>>>>>411 string Caldera\ Inc.\0 \b, DR-DOS MBR (IBMBIO.LDR)
>0x10F string Ung\201ltige\ Partitionstabelle \b, MS-DOS MBR, german version 4.10.1998, 4.10.2222
>0x8B string Ung\201ltige\ Partitionstabelle \b, MS-DOS MBR, german version 5.00 to 4.00.950
->0x145 string Default:\ F \b, FREE-DOS MBR
+>300 string Invalid\ partition\ table\0
+>>324 string Error\ loading\ operating\ system\0
+>>>355 string Missing\ operating\ system\0 \b, Microsoft Windows XP MBR
+#??>>>389 string Invalid\ system\ disk
+>300 string Ung\201ltige\ Partitionstabelle
+#split string to avoid error: String too long
+>>328 string Fehler\ beim\ Laden\
+>>>346 string des\ Betriebssystems
+>>>>366 string Betriebssystem\ nicht\ vorhanden \b, Microsoft Windows XP MBR (german)
+>0x145 string Default:\ F \b, FREE-DOS MBR
+>64 string no\ active\ partition\ found
+>>96 string read\ error\ while\ reading\ drive \b, FREE-DOS Beta9 MBR
+# bootloader, bootmanager
+>43 string SMART\ BTMGRFAT12\ \ \
+>>430 string SBMK\ Bad!\r
+>>>3 string SBM \b, Smart Boot Manager
+>>>>6 string >\0 \b, version %s
+>382 string XOSLLOADXCF \b, EXtended Operating System Loader
+>6 string LILO \b, LInux i386 boot LOader
+>>120 string LILO \b, version 22.3.4 SuSe
+>>172 string LILO \b, version 22.5.8 Debian
+>402 string Geom\0Hard\ Disk\0Read\0\ Error\0
+>>394 string stage1 \b, GRand Unified Bootloader (0.5.95)
+>380 string Geom\0Hard\ Disk\0Read\0\ Error\0
+>>374 string GRUB\ \0 \b, GRand Unified Bootloader
+>382 string Geom\0Hard\ Disk\0Read\0\ Error\0
+>>376 string GRUB\ \0 \b, GRand Unified Bootloader (0.93)
+>383 string Geom\0Hard\ Disk\0Read\0\ Error\0
+>>377 string GRUB\ \0 \b, GRand Unified Bootloader (0.94)
+>480 string Boot\ failed\r
+>>495 string LDLINUX\ SYS \b, SYSLINUX bootloader (2.06)
+>395 string chksum\0\ ERROR!\0 \b, Gujin bootloader
+>185 string FDBOOT\ Version\
+>>204 string \rNo\ Systemdisk.\
+>>>220 string Booting\ from\ harddisk.\n\r
+>>>245 string Cannot\ load\ from\ harddisk.\n\r
+>>>>273 string Insert\ Systemdisk\
+>>>>>291 string and\ press\ any\ key.\n\r \b, FDBOOT harddisk Bootloader
+>>>>>>200 string >\0 \b, version %-3s
+>242 string Bootsector\ from\ C.H.\ Hochst\204
+>>278 string No\ Systemdisk.\
+>>>293 string Booting\ from\ harddisk.\n\r
+>>>441 string Cannot\ load\ from\ harddisk.\n\r
+>>>>469 string Insert\ Systemdisk\
+>>>>>487 string and\ press\ any\ key.\n\r \b, WinImage harddisk Bootloader
+>>>>>>209 string >\0 \b, version %-4.4s
+>(1.b+2) ubyte 0xe
+>>(1.b+3) ubyte 0x1f
+>>>(1.b+4) ubyte 0xbe
+>>>>(1.b+5) ubyte 0x77
+>>>>(1.b+6) ubyte 0x7c
+>>>>>(1.b+7) ubyte 0xac
+>>>>>>(1.b+8) ubyte 0x22
+>>>>>>>(1.b+9) ubyte 0xc0
+>>>>>>>>(1.b+10) ubyte 0x74
+>>>>>>>>>(1.b+11) ubyte 0xb
+>>>>>>>>>>(1.b+12) ubyte 0x56
+>>>>>>>>>>(1.b+13) ubyte 0xb4 \b, mkdosfs boot message display
+# XP
+>430 string NTLDR\ is\ missing\xFF\r\n
+>>449 string Disk\ error\xFF\r\n
+>>>462 string Press\ any\ key\ to\ restart\r \b, Microsoft Windows XP Bootloader
+# DOS names like NTLDR,CMLDR,$LDR$ are 8 right space padded bytes+3 bytes
+>>>>417 ubyte <0x7E
+>>>>>417 string >\ %-.5s
+>>>>>>422 ubyte <0x7E
+>>>>>>>422 string >\ \b%-.3s
+>>>>>>425 string >\ \b.%-.3s
+#
+>>>>368 ubyte <0x7E
+>>>>>368 string >\ %-.5s
+>>>>>>373 ubyte <0x7E
+>>>>>>>373 string >\ \b%-.3s
+>>>>>>376 string >\ \b.%-.3s
+#
+>430 string NTLDR\ nicht\ gefunden\xFF\r\n
+>>453 string Datentr\204gerfehler\xFF\r\n
+>>>473 string Neustart\ mit\ beliebiger\ Taste\r \b, Microsoft Windows XP Bootloader (german)
+>>>>417 ubyte <0x7E
+>>>>>417 string >\ %-.5s
+>>>>>>422 ubyte <0x7E
+>>>>>>>422 string >\ \b%-.3s
+>>>>>>425 string >\ \b.%-.3s
+#
+>>>>368 ubyte <0x7E
+>>>>>368 string >\ %-.5s
+>>>>>>373 ubyte <0x7E
+>>>>>>>373 string >\ \b%-.3s
+>>>>>>376 string >\ \b.%-.3s
+#
+>430 string NTLDR\ fehlt\xFF\r\n
+>>444 string Datentr\204gerfehler\xFF\r\n
+>>>464 string Neustart\ mit\ beliebiger\ Taste\r \b, Microsoft Windows XP Bootloader (2.german)
+>>>>417 ubyte <0x7E
+>>>>>417 string >\ %-.5s
+>>>>>>422 ubyte <0x7E
+>>>>>>>422 string >\ \b%-.3s
+>>>>>>425 string >\ \b.%-.3s
+#
+>430 string NTLDR\ fehlt\xFF\r\n
+>>444 string Medienfehler\xFF\r\n
+>>>459 string Neustart:\ Taste\ dr\201cken\r \b, Microsoft Windows XP Bootloader (3.german)
+>>>>368 ubyte <0x7E
+>>>>>368 string >\ %-.5s
+>>>>>>373 ubyte <0x7E
+>>>>>>>373 string >\ \b%-.3s
+>>>>>>376 string >\ \b.%-.3s
+>>>>417 ubyte <0x7E
+>>>>>417 string >\ %-.5s
+>>>>>>422 ubyte <0x7E
+>>>>>>>422 string >\ \b%-.3s
+>>>>>>425 string >\ \b.%-.3s
+#
+>430 string Datentr\204ger\ entfernen\xFF\r\n
+>>454 string Medienfehler\xFF\r\n
+>>>469 string Neustart:\ Taste\ dr\201cken\r \b, Microsoft Windows XP Bootloader (4.german)
+>>>>368 ubyte <0x7E
+>>>>>368 string >\ %-.5s
+>>>>>>373 ubyte <0x7E
+>>>>>>>373 string >\ \b%-.3s
+>>>>>>376 string >\ \b.%-.3s
+#>3 string NTFS\ \ \ \
+>389 string Fehler\ beim\ Lesen\
+>>407 string des\ Datentr\204gers
+>>>426 string NTLDR\ fehlt
+>>>>440 string NTLDR\ ist\ komprimiert
+>>>>>464 string Neustart\ mit\ Strg+Alt+Entf\r \b, Microsoft Windows XP Bootloader NTFS (german)
+#>3 string NTFS\ \ \ \
+>313 string A\ disk\ read\ error\ occurred.\r
+>>345 string A\ kernel\ file\ is\ missing\
+>>>370 string from\ the\ disk.\r
+>>>>484 string NTLDR\ is\ compressed
+>>>>>429 string Insert\ a\ system\ diskette\
+>>>>>>454 string and\ restart\r\nthe\ system.\r \b, Microsoft Windows XP Bootloader NTFS
+# DOS loader variants different languages,offsets
+>472 string IO\ \ \ \ \ \ SYSMSDOS\ \ \ SYS
+>>497 string WINBOOT\ SYS
+>>389 string Invalid\ system\ disk\xFF\r\n
+>>>411 string Disk\ I/O\ error
+>>>>428 string Replace\ the\ disk,\ and\
+>>>>>455 string press\ any\ key \b, Microsoft Windows 98 Bootloader
+#
+>>390 string Invalid\ system\ disk\xFF\r\n
+>>>412 string Disk\ I/O\ error\xFF\r\n
+>>>>429 string Replace\ the\ disk,\ and\
+>>>>>451 string then\ press\ any\ key\r \b, Microsoft Windows 98 Bootloader
+>>388 string Ungueltiges\ System\ \xFF\r\n
+>>>410 string E/A-Fehler\ \ \ \ \xFF\r\n
+>>>>427 string Datentraeger\ wechseln\ und\
+>>>>>453 string Taste\ druecken\r \b, Microsoft Windows 95/98/ME Bootloader (german)
+#
+>>390 string Ungueltiges\ System\ \xFF\r\n
+>>>412 string E/A-Fehler\ \ \ \ \xFF\r\n
+>>>>429 string Datentraeger\ wechseln\ und\
+>>>>>455 string Taste\ druecken\r \b, Microsoft Windows 95/98/ME Bootloader (German)
+#
+>>389 string Ungueltiges\ System\ \xFF\r\n
+>>>411 string E/A-Fehler\ \ \ \ \xFF\r\n
+>>>>428 string Datentraeger\ wechseln\ und\
+>>>>>454 string Taste\ druecken\r \b, Microsoft Windows 95/98/ME Bootloader (GERMAN)
+>479 string IO\ \ \ \ \ \ SYSMSDOS\ \ \ SYS
+>>416 string Kein\ System\ oder\
+>>>433 string Laufwerksfehler
+>>>>450 string Wechseln\ und\ Taste\ dr\201cken \b, Microsoft DOS Bootloader (german)
+>486 string IO\ \ \ \ \ \ SYSMSDOS\ \ \ SYS
+>>416 string Non-System\ disk\ or\
+>>>435 string disk\ error\r
+>>>>447 string Replace\ and\ press\ any\ key\
+>>>>>473 string when\ ready\r \b, Microsoft DOS Bootloader
+>480 string IO\ \ \ \ \ \ SYSMSDOS\ \ \ SYS
+>>393 string Non-System\ disk\ or\
+>>>412 string disk\ error\r
+>>>>424 string Replace\ and\ press\ any\ key\
+>>>>>450 string when\ ready\r \b, Microsoft DOS bootloader
+#>43 string \224R-LOADER\ \ SYS =label
+>54 string SYS
+>>324 string VASKK
+>>>495 string NEWLDR\0 \b, DR-DOS Bootloader (LOADER.SYS)
+#
+>70 string IBMBIO\ \ COM
+>>472 string Cannot\ load\ DOS!\
+>>>489 string Any\ key\ to\ retry \b, DR-DOS Bootloader
+>>471 string Cannot\ load\ DOS\
+>>487 string press\ key\ to\ retry \b, Open-DOS Bootloader
+>444 string KERNEL\ \ SYS
+>>314 string BOOT\ error! \b, FREE-DOS Bootloader
+>499 string KERNEL\ \ SYS
+>>305 string BOOT\ err!\0 \b, Free-DOS Bootloader
+>449 string KERNEL\ \ SYS
+>>319 string BOOT\ error! \b, FREE-DOS 5.0 Bootloader
+>124 string FreeDOS\0
+>>331 string \ err\0 \b, FREE-DOS BETa 9 Bootloader
+# DOS names like KERNEL.SYS,KERNEL16.SYS,KERNEL32.SYS,METAKERN.SYS are 8 right space padded bytes+3 bytes
+>>>497 string >\ %-.6s
+>>>>503 string >\ \b%-.1s
+>>>>504 string >\ \b%-.1s
+>>>505 string >\ \b.%-.3s
+>>333 string \ err\0 \b, FREE-DOS BEta 9 Bootloader
+>>>497 string >\ %-.6s
+>>>>503 string >\ \b%-.1s
+>>>>504 string >\ \b%-.1s
+>>>505 string >\ \b.%-.3s
+>>334 string \ err\0 \b, FREE-DOS Beta 9 Bootloader
+>>>497 string >\ %-.6s
+>>>>503 string >\ \b%-.1s
+>>>>504 string >\ \b%-.1s
+>>>505 string >\ \b.%-.3s
+# loader end
>0 string \0\0\0\0 \b, extended partition table
# JuMP short bootcodeoffset NOP assembler instructions will usually be EB xx 90
# older drives may use E9 xx xx
@@ -338,3 +565,25 @@
# JFFS2 file system
0 leshort 0x1984 Linux old jffs2 filesystem data little endian
0 lelong 0xe0011985 Linux jffs2 filesystem data little endian
+
+# Squashfs
+0 string sqsh Squashfs filesystem, big endian,
+>28 beshort x version %d.
+>30 beshort x \b%d,
+>8 belong x %d bytes,
+>4 belong x %d inodes,
+>28 beshort <2
+>>32 beshort x blocksize: %d bytes,
+>28 beshort >1
+>>51 belong x blocksize: %d bytes,
+>39 bedate x created: %s
+0 string hsqs Squashfs filesystem, little endian,
+>28 leshort x version %d.
+>30 leshort x \b%d,
+>8 lelong x %d bytes,
+>4 lelong x %d inodes,
+>28 leshort <2
+>>32 leshort x blocksize: %d bytes,
+>28 leshort >1
+>>51 lelong x blocksize: %d bytes,
+>39 ledate x created: %s
diff --git a/magic/Magdir/gnu b/magic/Magdir/gnu
index 99b9830e..212dfc76 100644
--- a/magic/Magdir/gnu
+++ b/magic/Magdir/gnu
@@ -22,3 +22,9 @@
# This entry is only semi-helpful, as Gnumeric compresses its files, so
# they will ordinarily reported as "compressed", but at least -z helps
39 string =<gmr:Workbook Gnumeric spreadsheet
+
+# From: James Youngman <jay@gnu.org>
+# gnu find magic
+0 string \0LOCATE GNU findutils locate database data
+>7 string >\0 \b, format %s
+>7 string 02 \b (frcode)
diff --git a/magic/Magdir/images b/magic/Magdir/images
index f893913d..6143df4b 100644
--- a/magic/Magdir/images
+++ b/magic/Magdir/images
@@ -519,4 +519,10 @@
# From: Tom Hilinski <tom.hilinski@comcast.net>
# http://www.unidata.ucar.edu/packages/netcdf/
-0 string CDF\001 netcdf file
+0 string CDF\001 NetCDF Data Format data
+
+#-----------------------------------------------------------------------
+# Hierarchical Data Format, used to facilitate scientific data exchange
+# specifications at http://hdf.ncsa.uiuc.edu/
+0 belong 0x0e031301 Hierarchical Data Format (version 4) data
+0 string \211HDF\r\n\032 Hierarchical Data Format (version 5) data
diff --git a/magic/Magdir/mail.news b/magic/Magdir/mail.news
index 2cace95c..f08261ca 100644
--- a/magic/Magdir/mail.news
+++ b/magic/Magdir/mail.news
@@ -36,5 +36,6 @@
# Squish Fidonet message area databases
# SQD file (requires at least one message in the area)
-256 leshort 0xAFAE4453 Squish message area data file
->4 leshort >0 (%d messages)
+# XXX: Weak magic
+#256 leshort 0xAFAE4453 Squish message area data file
+#>4 leshort >0 (%d messages)
diff --git a/magic/Magdir/msdos b/magic/Magdir/msdos
index 3c230b74..c81b2a5a 100644
--- a/magic/Magdir/msdos
+++ b/magic/Magdir/msdos
@@ -334,12 +334,6 @@
>>>&1 string >\0 %.4s]
>>0x1c string pmodedj stubbed with %s
-# QDOS
-4 belong 0x4AFB QDOS executable
->9 pstring x '%s'
-0 beshort 0xFB01 QDOS object
->2 pstring x '%s'
-
#------------------------------------------------------------------------------
# From Stuart Caie <kyzer@4u.net> (developer of cabextract)
# Microsoft Cabinet files
diff --git a/magic/Magdir/printer b/magic/Magdir/printer
index 388facf7..77ba7809 100644
--- a/magic/Magdir/printer
+++ b/magic/Magdir/printer
@@ -114,3 +114,7 @@
#------------------------------------------------------------------------------
# HP LaserJet 1000 series downloadable firmware file
0 string \xbe\xefABCDEFGH HP LaserJet 1000 series downloadable firmware
+
+# From: Paolo <oopla@users.sf.net>
+# Epson ESC/Page, ESC/PageColor
+0 string \x1b\x01@EJL Epson ESC/Page language printer data
diff --git a/magic/Magdir/varied.out b/magic/Magdir/varied.out
index 537c5af4..791c9419 100644
--- a/magic/Magdir/varied.out
+++ b/magic/Magdir/varied.out
@@ -30,6 +30,3 @@
# Harbour <URL:http://www.harbour-project.org/> HRB files.
0 string \xc0HRB Harbour HRB file
>4 short x version %d
-
-# From: "Stefan A. Haubenthal" <polluks@web.de>
-0 belong 0x000001EB Plan 9 executable
diff --git a/magic/magic.mime b/magic/magic.mime
index 9be56467..4f8fc577 100644
--- a/magic/magic.mime
+++ b/magic/magic.mime
@@ -188,6 +188,11 @@
#
>8 string CDRA image/x-coreldraw
+# AAC (aka MPEG-2 NBC)
+0 beshort&FFF6 0xFFF0 audio/X-HX-AAC-ADTS
+0 string ADIF audio/X-HX-AAC-ADIF
+0 beshort&0xFFE0 0x56E0 audio/MP4A-LATM
+0 beshort 0x4DE1 audio/MP4A-LATM
# MPEG Layer 3 sound files
0 beshort &0xffe0 audio/mpeg
@@ -588,12 +593,17 @@
# animation formats, originally from vax@ccwf.cc.utexas.edu (VaX#n8)
# MPEG file
# MPEG sequences
-0 belong 0x000001BA video/mpeg
-0 belong 0x000001BB video/mpeg
-0 belong 0x000001B0 video/mp4v-es
-0 belong 0x000001B5 video/mp4v-es
-0 belong 0x000001B3 video/mpv
-0 belong&0xFF5FFF1F 0x47400010 video/mp2t
+0 belong 0x000001BA
+>4 byte &0x40 video/mp2p
+>4 byte ^0x40 video/mpeg
+0 belong 0x000001BB video/mpeg
+0 belong 0x000001B0 video/mp4v-es
+0 belong 0x000001B5 video/mp4v-es
+0 belong 0x000001B3 video/mpv
+0 belong&0xFF5FFF1F 0x47400010 video/mp2t
+0 belong 0x00000001
+>4 byte&1F 0x07 video/h264
+
# FLI animation format
0 leshort 0xAF11 video/fli
# FLC animation format
@@ -601,7 +611,6 @@
#
# SGI and Apple formats
# Added ISO mimes
-# Added ISO mimes
0 string MOVI video/sgi
4 string moov video/quicktime
4 string mdat video/quicktime
@@ -612,12 +621,13 @@
4 string idat image/x-quicktime
4 string pckg application/x-quicktime
4 string/B jP image/jp2
-4 string ftyp application/octet-stream
+4 string ftyp
>8 string isom video/mp4
>8 string mp41 video/mp4
>8 string mp42 video/mp4
>8 string/B jp2 image/jp2
>8 string 3gp video/3gpp
+>8 string avc1 video/3gpp
>8 string mmp4 video/mp4
>8 string/B M4A audio/mp4
>8 string/B qt video/quicktime