Merge from vendor branch OPENSSL:
[dragonfly.git] / contrib / file-4 / magic / magic.mime
1 # Magic data for KMimeMagic (originally for file(1) command)
2 #
3 # The format is 4-5 columns:
4 #    Column #1: byte number to begin checking from, ">" indicates continuation
5 #    Column #2: type of data to match
6 #    Column #3: contents of data to match
7 #    Column #4: MIME type of result
8 #    Column #5: MIME encoding of result (optional)
9
10 #------------------------------------------------------------------------------
11 # Localstuff:  file(1) magic for locally observed files
12 # Add any locally observed files here.
13
14 # Real Audio (Magic .ra\0375)
15 0       belong          0x2e7261fd      audio/x-pn-realaudio
16 0       string          .RMF            application/vnd.rn-realmedia
17
18 #video/x-pn-realvideo
19 #video/vnd.rn-realvideo
20 #application/vnd.rn-realmedia
21 #       sigh, there are many mimes for that but the above are the most common.
22
23 # Taken from magic, converted to magic.mime
24 # mime types according to http://www.geocities.com/nevilo/mod.htm:
25 #       audio/it        .it
26 #       audio/x-zipped-it       .itz
27 #       audio/xm        fasttracker modules
28 #       audio/x-s3m     screamtracker modules
29 #       audio/s3m       screamtracker modules
30 #       audio/x-zipped-mod      mdz
31 #       audio/mod       mod
32 #       audio/x-mod     All modules (mod, s3m, 669, mtm, med, xm, it, mdz, stm, itz, xmz, s3z)
33
34 # Taken from loader code from mikmod version 2.14
35 # by Steve McIntyre (stevem@chiark.greenend.org.uk)
36 # <doj@cubic.org> added title printing on 2003-06-24
37 0       string  MAS_UTrack_V00
38 >14     string  >/0             audio/x-mod
39 #audio/x-tracker-module
40
41 #0      string  UN05            MikMod UNI format module sound data
42
43 0       string  Extended\ Module: audio/x-mod
44 #audio/x-tracker-module
45 ##>17   string  >\0             Title: "%s"
46
47 21      string/c        \!SCREAM!       audio/x-mod
48 #audio/x-screamtracker-module
49 21      string  BMOD2STM        audio/x-mod
50 #audio/x-screamtracker-module
51 1080    string  M.K.            audio/x-mod
52 #audio/x-protracker-module
53 #>0     string  >\0             Title: "%s"
54 1080    string  M!K!            audio/x-mod
55 #audio/x-protracker-module
56 #>0     string  >\0             Title: "%s"
57 1080    string  FLT4            audio/x-mod
58 #audio/x-startracker-module
59 #>0     string  >\0             Title: "%s"
60 1080    string  FLT8            audio/x-mod
61 #audio/x-startracker-module
62 #>0     string  >\0             Title: "%s"
63 1080    string  4CHN            audio/x-mod
64 #audio/x-fasttracker-module
65 #>0     string  >\0             Title: "%s"
66 1080    string  6CHN            audio/x-mod
67 #audio/x-fasttracker-module
68 #>0     string  >\0             Title: "%s"
69 1080    string  8CHN            audio/x-mod
70 #audio/x-fasttracker-module
71 #>0     string  >\0             Title: "%s"
72 1080    string  CD81            audio/x-mod
73 #audio/x-oktalyzer-tracker-module
74 #>0     string  >\0             Title: "%s"
75 1080    string  OKTA            audio/x-mod
76 #audio/x-oktalyzer-tracker-module
77 #>0     string  >\0             Title: "%s"
78 # Not good enough.
79 #1082   string  CH
80 #>1080  string  >/0             %.2s-channel Fasttracker "oktalyzer" module sound data
81 1080    string  16CN            audio/x-mod
82 #audio/x-taketracker-module
83 #>0     string  >\0             Title: "%s"
84 1080    string  32CN            audio/x-mod
85 #audio/x-taketracker-module
86 #>0     string  >\0             Title: "%s"
87
88 # Impuse tracker module (it)
89 0       string          IMPM            audio/x-mod
90 #>4     string          >\0             "%s"
91 #>40    leshort         !0              compatible w/ITv%x
92 #>42    leshort         !0              created w/ITv%x
93
94 #------------------------------------------------------------------------------
95 # end local stuff
96 #------------------------------------------------------------------------------
97
98 # xml based formats!
99
100 # svg
101
102 38      string          \<\!DOCTYPE\040svg      image/svg+xml
103
104
105 # xml
106 0       string          \<?xml                  text/xml
107
108
109 #------------------------------------------------------------------------------
110 # Java
111
112 0       beshort         0xcafe
113 >2      beshort         0xbabe          application/java
114
115 #------------------------------------------------------------------------------
116 # audio:  file(1) magic for sound formats
117 #
118 # from Jan Nicolai Langfeldt <janl@ifi.uio.no>,
119 #
120
121 # Sun/NeXT audio data
122 0       string          .snd
123 >12     belong          1               audio/basic
124 >12     belong          2               audio/basic
125 >12     belong          3               audio/basic
126 >12     belong          4               audio/basic
127 >12     belong          5               audio/basic
128 >12     belong          6               audio/basic
129 >12     belong          7               audio/basic
130
131 >12     belong          23              audio/x-adpcm
132
133 # DEC systems (e.g. DECstation 5000) use a variant of the Sun/NeXT format
134 # that uses little-endian encoding and has a different magic number
135 # (0x0064732E in little-endian encoding).
136 0       lelong          0x0064732E
137 >12     lelong          1               audio/x-dec-basic
138 >12     lelong          2               audio/x-dec-basic
139 >12     lelong          3               audio/x-dec-basic
140 >12     lelong          4               audio/x-dec-basic
141 >12     lelong          5               audio/x-dec-basic
142 >12     lelong          6               audio/x-dec-basic
143 >12     lelong          7               audio/x-dec-basic
144 #                                       compressed (G.721 ADPCM)
145 >12     lelong          23              audio/x-dec-adpcm
146
147 # Bytes 0-3 of AIFF, AIFF-C, & 8SVX audio files are "FORM"
148 #                                       AIFF audio data
149 8       string          AIFF            audio/x-aiff
150 #                                       AIFF-C audio data
151 8       string          AIFC            audio/x-aiff
152 #                                       IFF/8SVX audio data
153 8       string          8SVX            audio/x-aiff
154
155
156
157 # Creative Labs AUDIO stuff
158 #                                       Standard MIDI data
159 0       string  MThd                    audio/unknown
160 #>9     byte    >0                      (format %d)
161 #>11    byte    >1                      using %d channels
162 #                                       Creative Music (CMF) data
163 0       string  CTMF                    audio/unknown
164 #                                       SoundBlaster instrument data
165 0       string  SBI                     audio/unknown
166 #                                       Creative Labs voice data
167 0       string  Creative\ Voice\ File   audio/unknown
168 ## is this next line right?  it came this way...
169 #>19    byte    0x1A
170 #>23    byte    >0                      - version %d
171 #>22    byte    >0                      \b.%d
172
173 # [GRR 950115:  is this also Creative Labs?  Guessing that first line
174 #  should be string instead of unknown-endian long...]
175 #0      long            0x4e54524b      MultiTrack sound data
176 #0      string          NTRK            MultiTrack sound data
177 #>4     long            x               - version %ld
178
179 # Microsoft WAVE format (*.wav)
180 # [GRR 950115:  probably all of the shorts and longs should be leshort/lelong]
181 #                                       Microsoft RIFF
182 0       string          RIFF
183 #                                       - WAVE format
184 >8      string          WAVE            audio/x-wav
185 >8      string/B        AVI             video/x-msvideo
186 #
187 >8      string          CDRA            image/x-coreldraw
188
189 # AAC (aka MPEG-2 NBC)
190 0       beshort&0xfff6    0xfff0          audio/X-HX-AAC-ADTS
191 0       string          ADIF            audio/X-HX-AAC-ADIF
192 0       beshort&0xffe0  0x56e0          audio/MP4A-LATM
193 0       beshort         0x4De1          audio/MP4A-LATM
194
195 # MPEG Layer 3 sound files
196 # modified by Joerg Jenderek
197 # GRR the original test are too common for many DOS files
198 # so test 1 <= kbits nibble <= E
199 0       beshort         &0xffe0         
200 >2      ubyte&0xF0      >0x0F           
201 >>2     ubyte&0xF0      <0xE1           audio/mpeg
202 #MP3 with ID3 tag
203 0       string          ID3             audio/mpeg
204 # Ogg/Vorbis
205 0       string          OggS            application/ogg
206
207 #------------------------------------------------------------------------------
208 # c-lang:  file(1) magic for C programs or various scripts
209 #
210
211 # XPM icons (Greg Roelofs, newt@uchicago.edu)
212 # ideally should go into "images", but entries below would tag XPM as C source
213 0       string          /*\ XPM         image/x-xpmi 7bit
214
215 # 3DS (3d Studio files) Conflicts with diff output 0x3d '='
216 #16     beshort         0x3d3d          image/x-3ds
217
218 # this first will upset you if you're a PL/1 shop... (are there any left?)
219 # in which case rm it; ascmagic will catch real C programs
220 #                                       C or REXX program text
221 #0      string          /*              text/x-c
222 #                                       C++ program text
223 #0      string          //              text/x-c++
224
225 #------------------------------------------------------------------------------
226 # commands:  file(1) magic for various shells and interpreters
227 #
228 #0       string          :\ shell archive or commands for antique kernel text
229 0       string          #!/bin/sh               application/x-shellscript
230 0       string          #!\ /bin/sh             application/x-shellscript
231 0       string          #!/bin/csh              application/x-shellscript
232 0       string          #!\ /bin/csh            application/x-shellscript
233 # korn shell magic, sent by George Wu, gwu@clyde.att.com
234 0       string          #!/bin/ksh              application/x-shellscript
235 0       string          #!\ /bin/ksh            application/x-shellscript
236 0       string          #!/bin/tcsh             application/x-shellscript
237 0       string          #!\ /bin/tcsh           application/x-shellscript
238 0       string          #!/usr/local/tcsh       application/x-shellscript
239 0       string          #!\ /usr/local/tcsh     application/x-shellscript
240 0       string          #!/usr/local/bin/tcsh   application/x-shellscript
241 0       string          #!\ /usr/local/bin/tcsh application/x-shellscript
242 # bash shell magic, from Peter Tobias (tobias@server.et-inf.fho-emden.de)
243 0       string          #!/bin/bash                     application/x-shellscript
244 0       string          #!\ /bin/bash           application/x-shellscript
245 0       string          #!/usr/local/bin/bash   application/x-shellscript
246 0       string          #!\ /usr/local/bin/bash application/x-shellscript
247
248 #
249 # zsh/ash/ae/nawk/gawk magic from cameron@cs.unsw.oz.au (Cameron Simpson)
250 0       string          #!/bin/zsh              application/x-shellscript
251 0       string          #!/usr/bin/zsh          application/x-shellscript
252 0       string          #!/usr/local/bin/zsh    application/x-shellscript
253 0       string          #!\ /usr/local/bin/zsh  application/x-shellscript
254 0       string          #!/usr/local/bin/ash    application/x-shellscript
255 0       string          #!\ /usr/local/bin/ash  application/x-shellscript
256 #0       string          #!/usr/local/bin/ae     Neil Brown's ae
257 #0       string          #!\ /usr/local/bin/ae   Neil Brown's ae
258 0       string          #!/bin/nawk             application/x-nawk
259 0       string          #!\ /bin/nawk           application/x-nawk
260 0       string          #!/usr/bin/nawk         application/x-nawk
261 0       string          #!\ /usr/bin/nawk       application/x-nawk
262 0       string          #!/usr/local/bin/nawk   application/x-nawk
263 0       string          #!\ /usr/local/bin/nawk application/x-nawk
264 0       string          #!/bin/gawk             application/x-gawk
265 0       string          #!\ /bin/gawk           application/x-gawk
266 0       string          #!/usr/bin/gawk         application/x-gawk
267 0       string          #!\ /usr/bin/gawk       application/x-gawk
268 0       string          #!/usr/local/bin/gawk   application/x-gawk
269 0       string          #!\ /usr/local/bin/gawk application/x-gawk
270 #
271 0       string          #!/bin/awk              application/x-awk
272 0       string          #!\ /bin/awk            application/x-awk
273 0       string          #!/usr/bin/awk          application/x-awk
274 0       string          #!\ /usr/bin/awk        application/x-awk
275 # update to distinguish from *.vcf files by Joerg Jenderek: joerg dot jenderek at web dot de
276 0       regex           BEGIN[[:space:]]*[{]    application/x-awk
277
278 # For Larry Wall's perl language.  The ``eval'' line recognizes an
279 # outrageously clever hack for USG systems.
280 #                               Keith Waclena <keith@cerberus.uchicago.edu>
281 0       string          #!/bin/perl                     application/x-perl
282 0       string          #!\ /bin/perl                   application/x-perl
283 0       string          eval\ "exec\ /bin/perl          application/x-perl
284 0       string          #!/usr/bin/perl                 application/x-perl
285 0       string          #!\ /usr/bin/perl               application/x-perl
286 0       string          eval\ "exec\ /usr/bin/perl      application/x-perl
287 0       string          #!/usr/local/bin/perl           application/x-perl
288 0       string          #!\ /usr/local/bin/perl         application/x-perl
289 0       string          eval\ "exec\ /usr/local/bin/perl application/x-perl
290
291 #------------------------------------------------------------------------------
292 # compress:  file(1) magic for pure-compression formats (no archives)
293 #
294 # compress, gzip, pack, compact, huf, squeeze, crunch, freeze, yabba, whap, etc.
295 #
296 # Formats for various forms of compressed data
297 # Formats for "compress" proper have been moved into "compress.c",
298 # because it tries to uncompress it to figure out what's inside.
299
300 # standard unix compress
301 0       string          \037\235        application/x-compress
302
303 # gzip (GNU zip, not to be confused with [Info-ZIP/PKWARE] zip archiver)
304 0       string          \037\213        application/x-gzip
305
306 0               string                  PK\003\004              application/x-zip
307
308 # RAR archiver (Greg Roelofs, newt@uchicago.edu)
309 0       string          Rar!            application/x-rar
310
311 # According to gzip.h, this is the correct byte order for packed data.
312 0       string          \037\036        application/octet-stream
313 #
314 # This magic number is byte-order-independent.
315 #
316 0       short           017437          application/octet-stream
317
318 # XXX - why *two* entries for "compacted data", one of which is
319 # byte-order independent, and one of which is byte-order dependent?
320 #
321 # compacted data
322 0       short           0x1fff          application/octet-stream
323 0       string          \377\037        application/octet-stream
324 # huf output
325 0       short           0145405         application/octet-stream
326
327 # Squeeze and Crunch...
328 # These numbers were gleaned from the Unix versions of the programs to
329 # handle these formats.  Note that I can only uncrunch, not crunch, and
330 # I didn't have a crunched file handy, so the crunch number is untested.
331 #                               Keith Waclena <keith@cerberus.uchicago.edu>
332 #0      leshort         0x76FF          squeezed data (CP/M, DOS)
333 #0      leshort         0x76FE          crunched data (CP/M, DOS)
334
335 # Freeze
336 #0      string          \037\237        Frozen file 2.1
337 #0      string          \037\236        Frozen file 1.0 (or gzip 0.5)
338
339 # lzh?
340 #0      string          \037\240        LZH compressed data
341
342 257     string          ustar\0         application/x-tar       posix
343 257     string          ustar\040\040\0         application/x-tar       gnu
344
345 0       short           070707          application/x-cpio
346 0       short           0143561         application/x-cpio      swapped
347
348 0       string          =<ar>           application/x-archive
349 0       string          \!<arch>        application/x-archive
350 >8      string          debian          application/x-debian-package
351
352 #------------------------------------------------------------------------------
353 #
354 # RPM: file(1) magic for Red Hat Packages   Erik Troan (ewt@redhat.com)
355 #
356 0       beshort         0xedab
357 >2      beshort         0xeedb          application/x-rpm
358
359 0       lelong&0x8080ffff       0x0000081a      application/x-arc       lzw
360 0       lelong&0x8080ffff       0x0000091a      application/x-arc       squashed
361 0       lelong&0x8080ffff       0x0000021a      application/x-arc       uncompressed
362 0       lelong&0x8080ffff       0x0000031a      application/x-arc       packed
363 0       lelong&0x8080ffff       0x0000041a      application/x-arc       squeezed
364 0       lelong&0x8080ffff       0x0000061a      application/x-arc       crunched
365
366 0       leshort 0xea60  application/x-arj
367
368 # LHARC/LHA archiver (Greg Roelofs, newt@uchicago.edu)
369 2       string  -lh0-   application/x-lharc     lh0
370 2       string  -lh1-   application/x-lharc     lh1
371 2       string  -lz4-   application/x-lharc     lz4
372 2       string  -lz5-   application/x-lharc     lz5
373 #       [never seen any but the last; -lh4- reported in comp.compression:]
374 2       string  -lzs-   application/x-lha       lzs
375 2       string  -lh\ -  application/x-lha       lh
376 2       string  -lhd-   application/x-lha       lhd
377 2       string  -lh2-   application/x-lha       lh2
378 2       string  -lh3-   application/x-lha       lh3
379 2       string  -lh4-   application/x-lha       lh4
380 2       string  -lh5-   application/x-lha       lh5
381 2       string  -lh6-   application/x-lha       lh6
382 2       string  -lh7-   application/x-lha       lh7
383 # Shell archives
384 10      string  #\ This\ is\ a\ shell\ archive  application/octet-stream        x-shell
385
386 #------------------------------------------------------------------------------
387 # frame:  file(1) magic for FrameMaker files
388 #
389 # This stuff came on a FrameMaker demo tape, most of which is
390 # copyright, but this file is "published" as witness the following:
391 #
392 0       string          \<MakerFile     application/x-frame
393 0       string          \<MIFFile       application/x-frame
394 0       string          \<MakerDictionary       application/x-frame
395 0       string          \<MakerScreenFon        application/x-frame
396 0       string          \<MML           application/x-frame
397 0       string          \<Book          application/x-frame
398 0       string          \<Maker         application/x-frame
399
400 #------------------------------------------------------------------------------
401 # html:  file(1) magic for HTML (HyperText Markup Language) docs
402 #
403 # from Daniel Quinlan <quinlan@yggdrasil.com>
404 #
405 0       string          \<HEAD  text/html
406 0       string          \<head  text/html
407 0       string          \<TITLE text/html
408 0       string          \<title text/html
409 0       string          \<html  text/html
410 0       string          \<HTML  text/html
411 0       string          \<!--   text/html
412 0       string          \<h1    text/html
413 0       string          \<H1    text/html
414 0       string/c        \<!doctype\ html        text/html
415
416 #------------------------------------------------------------------------------
417 # images:  file(1) magic for image formats (see also "c-lang" for XPM bitmaps)
418 #
419 # originally from jef@helios.ee.lbl.gov (Jef Poskanzer),
420 # additions by janl@ifi.uio.no as well as others. Jan also suggested
421 # merging several one- and two-line files into here.
422 #
423 # XXX - byte order for GIF and TIFF fields?
424 # [GRR:  TIFF allows both byte orders; GIF is probably little-endian]
425 #
426
427 # [GRR:  what the hell is this doing in here?]
428 #0      string          xbtoa           btoa'd file
429
430 # PBMPLUS
431 #                                       PBM file
432 0       string          P1              image/x-portable-bitmap 7bit
433 #                                       PGM file
434 0       string          P2              image/x-portable-greymap        7bit
435 #                                       PPM file
436 0       string          P3              image/x-portable-pixmap 7bit
437 #                                       PBM "rawbits" file
438 0       string          P4              image/x-portable-bitmap
439 #                                       PGM "rawbits" file
440 0       string          P5              image/x-portable-greymap
441 #                                       PPM "rawbits" file
442 0       string          P6              image/x-portable-pixmap
443
444 # NIFF (Navy Interchange File Format, a modification of TIFF)
445 # [GRR:  this *must* go before TIFF]
446 0       string          IIN1            image/x-niff
447
448 # TIFF and friends
449 #                                       TIFF file, big-endian
450 0       string          MM              image/tiff
451 #                                       TIFF file, little-endian
452 0       string          II              image/tiff
453
454 # possible GIF replacements; none yet released!
455 # (Greg Roelofs, newt@uchicago.edu)
456 #
457 # GRR 950115:  this was mine ("Zip GIF"):
458 #                                       ZIF image (GIF+deflate alpha)
459 0       string          GIF94z          image/unknown
460 #
461 # GRR 950115:  this is Jeremy Wohl's Free Graphics Format (better):
462 #                                       FGF image (GIF+deflate beta)
463 0       string          FGF95a          image/unknown
464 #
465 # GRR 950115:  this is Thomas Boutell's Portable Bitmap Format proposal
466 # (best; not yet implemented):
467 #                                       PBF image (deflate compression)
468 0       string          PBF             image/unknown
469
470 # GIF
471 0       string          GIF             image/gif
472
473 # JPEG images
474 0       beshort         0xffd8          image/jpeg
475
476 # PC bitmaps (OS/2, Windoze BMP files)  (Greg Roelofs, newt@uchicago.edu)
477 0       string          BM              image/bmp
478 #>14    byte            12              (OS/2 1.x format)
479 #>14    byte            64              (OS/2 2.x format)
480 #>14    byte            40              (Windows 3.x format)
481 #0      string          IC              icon
482 #0      string          PI              pointer
483 #0      string          CI              color icon
484 #0      string          CP              color pointer
485 #0      string          BA              bitmap array
486
487 # CDROM Filesystems
488 32769    string    CD001     application/x-iso9660
489
490 # Newer StuffIt archives (grant@netbsd.org)
491 0       string          StuffIt                 application/x-stuffit
492 #>162   string          >0                      : %s
493
494 # BinHex is the Macintosh ASCII-encoded file format (see also "apple")
495 # Daniel Quinlan, quinlan@yggdrasil.com
496 11      string  must\ be\ converted\ with\ BinHex\ 4    application/mac-binhex40
497 ##>41   string  x                                       \b, version %.3s
498
499
500 #------------------------------------------------------------------------------
501 # lisp:  file(1) magic for lisp programs
502 #
503 # various lisp types, from Daniel Quinlan (quinlan@yggdrasil.com)
504 0       string  ;;                      text/plain      8bit
505 # Emacs 18 - this is always correct, but not very magical.
506 0       string  \012(                   application/x-elc
507 # Emacs 19
508 0       string  ;ELC\023\000\000\000    application/x-elc
509
510 #------------------------------------------------------------------------------
511 # mail.news:  file(1) magic for mail and news
512 #
513 # There are tests to ascmagic.c to cope with mail and news.
514 0       string          Relay-Version:  message/rfc822  7bit
515 0       string          #!\ rnews       message/rfc822  7bit
516 0       string          N#!\ rnews      message/rfc822  7bit
517 0       string          Forward\ to     message/rfc822  7bit
518 0       string          Pipe\ to        message/rfc822  7bit
519 0       string          Return-Path:    message/rfc822  7bit
520 0       string          Received:       message/rfc822
521 0       string          Path:           message/news    8bit
522 0       string          Xref:           message/news    8bit
523 0       string          From:           message/rfc822  7bit
524 0       string          Article         message/news    8bit
525 #------------------------------------------------------------------------------
526 # msword: file(1) magic for MS Word files
527 #
528 # Contributor claims:
529 # Reversed-engineered MS Word magic numbers
530 #
531
532 0       string          \376\067\0\043                  application/msword
533 # disable this one because it applies also to other
534 # Office/OLE documents for which msword is not correct. See PR#2608.
535 # from magic file of the apache
536 #0      string          \320\317\021\340\241\261        application/msword
537 512     string          \354\245\301                    application/msword
538 0       string          \333\245-\0\0\0                 application/msword
539
540
541
542 #------------------------------------------------------------------------------
543 # printer:  file(1) magic for printer-formatted files
544 #
545
546 # PostScript
547 0       string          %!              application/postscript
548 0       string          \004%!          application/postscript
549
550 # Acrobat
551 # (due to clamen@cs.cmu.edu)
552 0       string          %PDF-           application/pdf
553
554 #------------------------------------------------------------------------------
555 # sc:  file(1) magic for "sc" spreadsheet
556 #
557 38      string          Spreadsheet     application/x-sc
558
559 #------------------------------------------------------------------------------
560 # tex:  file(1) magic for TeX files
561 #
562 # XXX - needs byte-endian stuff (big-endian and little-endian DVI?)
563 #
564 # From <conklin@talisman.kaleida.com>
565
566 # Although we may know the offset of certain text fields in TeX DVI
567 # and font files, we can't use them reliably because they are not
568 # zero terminated. [but we do anyway, christos]
569 0       string          \367\002        application/x-dvi
570 #0      string          \367\203        TeX generic font data
571 #0      string          \367\131        TeX packed font data
572 #0      string          \367\312        TeX virtual font data
573 #0      string          This\ is\ TeX,  TeX transcript text
574 #0      string          This\ is\ METAFONT,     METAFONT transcript text
575
576 # There is no way to detect TeX Font Metric (*.tfm) files without
577 # breaking them apart and reading the data.  The following patterns
578 # match most *.tfm files generated by METAFONT or afm2tfm.
579 2       string          \000\021        application/x-tex-tfm
580 2       string          \000\022        application/x-tex-tfm
581 #>34    string          >\0             (%s)
582
583 # Texinfo and GNU Info, from Daniel Quinlan (quinlan@yggdrasil.com)
584 0       string          \\input\ texinfo                text/x-texinfo
585 0       string          This\ is\ Info\ file    text/x-info
586
587 # correct TeX magic for Linux (and maybe more)
588 # from Peter Tobias (tobias@server.et-inf.fho-emden.de)
589 #
590 0       leshort         0x02f7          application/x-dvi
591
592 # RTF - Rich Text Format
593 0       string          {\\rtf          text/rtf
594
595 # TeX documents, from Daniel Quinlan (quinlan@yggdrasil.com)
596 0       search/400      \\input         text/x-tex
597 0       search/400      \\section       text/x-tex
598 0       search/400      \\setlength     text/x-tex
599 0       search/400      \\documentstyle text/x-tex
600 0       search/400      \\chapter       text/x-tex
601 0       search/400      \\documentclass text/x-tex
602
603 #------------------------------------------------------------------------------
604 # animation:  file(1) magic for animation/movie formats
605 #
606 # animation formats, originally from vax@ccwf.cc.utexas.edu (VaX#n8)
607 #                                               MPEG file
608 # MPEG sequences
609 0       belong             0x000001BA
610 >4      byte               &0x40          video/mp2p
611 >4      byte               ^0x40          video/mpeg
612 0       belong             0x000001BB     video/mpeg
613 0       belong             0x000001B0     video/mp4v-es
614 0       belong             0x000001B5     video/mp4v-es
615 0       belong             0x000001B3     video/mpv
616 0       belong&0xFF5FFF1F  0x47400010     video/mp2t
617 0       belong             0x00000001
618 >4      byte&0x1F          0x07           video/h264
619
620 # FLI animation format
621 0       leshort         0xAF11                          video/fli
622 # FLC animation format
623 0       leshort         0xAF12                          video/flc
624 #
625 # SGI and Apple formats
626 # Added ISO mimes
627 0       string          MOVI          video/sgi
628 4       string          moov          video/quicktime
629 4       string          mdat          video/quicktime
630 4       string          wide          video/quicktime
631 4       string          skip          video/quicktime
632 4       string          free          video/quicktime
633 4       string          idsc          image/x-quicktime
634 4       string          idat          image/x-quicktime
635 4       string          pckg          application/x-quicktime
636 4       string/B        jP            image/jp2
637 4       string          ftyp
638 >8      string          isom          video/mp4
639 >8      string          mp41          video/mp4
640 >8      string          mp42          video/mp4
641 >8      string/B        jp2           image/jp2
642 >8      string          3gp           video/3gpp
643 >8      string          avc1          video/3gpp
644 >8      string          mmp4          video/mp4
645 >8      string/B        M4A           audio/mp4
646 >8      string/B        qt            video/quicktime
647 # The contributor claims:
648 #   I couldn't find a real magic number for these, however, this
649 #   -appears- to work.  Note that it might catch other files, too,
650 #   so BE CAREFUL!
651 #
652 # Note that title and author appear in the two 20-byte chunks
653 # at decimal offsets 2 and 22, respectively, but they are XOR'ed with
654 # 255 (hex FF)! DL format SUCKS BIG ROCKS.
655 #
656 #                                               DL file version 1 , medium format (160x100, 4 images/screen)
657 0       byte            1                       video/unknown
658 0       byte            2                       video/unknown
659 #
660 # Databases
661 #
662 # GDBM magic numbers
663 #  Will be maintained as part of the GDBM distribution in the future.
664 #  <downsj@teeny.org>
665 0       belong  0x13579ace      application/x-gdbm
666 0       lelong  0x13579ace      application/x-gdbm
667 0       string  GDBM            application/x-gdbm
668 #
669 0       belong  0x061561        application/x-dbm
670 #
671 # Executables
672 #
673 0       string          \177ELF
674 >16     leshort         0               application/octet-stream
675 >16     leshort         1               application/x-object
676 >16     leshort         2               application/x-executable
677 >16     leshort         3               application/x-sharedlib
678 >16     leshort         4               application/x-coredump
679 >16     beshort         0               application/octet-stream
680 >16     beshort         1               application/x-object
681 >16     beshort         2               application/x-executable
682 >16     beshort         3               application/x-sharedlib
683 >16     beshort         4               application/x-coredump
684 #
685 # DOS
686 0               string                  MZ                              application/x-dosexec
687 #
688 # KDE
689 0               string  [KDE\ Desktop\ Entry]   application/x-kdelnk
690 0               string  #\ KDE\ Config\ File    application/x-kdelnk
691 # xmcd database file for kscd
692 0               string  #\ xmcd                text/xmcd
693
694 #------------------------------------------------------------------------------
695 # pkgadd:  file(1) magic for SysV R4 PKG Datastreams
696 #
697 0       string          #\ PaCkAgE\ DaTaStReAm  application/x-svr4-package
698
699 #PNG Image Format
700 0       string          \x89PNG                 image/png
701
702 # MNG Video Format, <URL:http://www.libpng.org/pub/mng/spec/>
703 0       string          \x8aMNG                 video/x-mng
704 0       string          \x8aJNG                 video/x-jng
705
706 #------------------------------------------------------------------------------
707 # Hierarchical Data Format, used to facilitate scientific data exchange
708 # specifications at http://hdf.ncsa.uiuc.edu/
709 0       belong          0x0e031301      Hierarchical Data Format (version 4) data
710 0       string          \211HDF\r\n\032 Hierarchical Data Format (version 5) data
711
712 # Adobe Photoshop
713 0       string          8BPS                    image/x-photoshop
714
715 # Felix von Leitner <felix-file@fefe.de>
716 0       string          d8:announce             application/x-bittorrent
717
718
719 # lotus 1-2-3 document
720 0       belong  0x00001a00      application/x-123
721 0       belong  0x00000200      application/x-123
722
723 # MS Access database
724 4       string  Standard\ Jet\ DB       application/msaccess
725
726 ## magic for XBase files
727 #0      byte       0x02
728 #>8     leshort   >0
729 #>>12   leshort    0    application/x-dbf
730 #
731 #0      byte       0x03
732 #>8     leshort   >0
733 #>>12   leshort    0    application/x-dbf
734 #
735 #0      byte       0x04
736 #>8     leshort   >0
737 #>>12   leshort    0    application/x-dbf
738 #
739 #0      byte       0x05
740 #>8     leshort   >0
741 #>>12   leshort    0    application/x-dbf
742 #
743 #0      byte       0x30
744 #>8     leshort   >0
745 #>>12   leshort    0    application/x-dbf
746 #
747 #0      byte       0x43
748 #>8     leshort   >0
749 #>>12   leshort    0    application/x-dbf
750 #
751 #0      byte       0x7b
752 #>8     leshort   >0
753 #>>12   leshort    0    application/x-dbf
754 #
755 #0      byte       0x83
756 #>8     leshort   >0
757 #>>12   leshort    0    application/x-dbf
758 #
759 #0      byte       0x8b
760 #>8     leshort   >0
761 #>>12   leshort    0    application/x-dbf
762 #
763 #0      byte       0x8e
764 #>8     leshort   >0
765 #>>12   leshort    0    application/x-dbf
766 #
767 #0      byte       0xb3
768 #>8     leshort   >0
769 #>>12   leshort    0    application/x-dbf
770 #
771 #0      byte       0xf5
772 #>8     leshort   >0
773 #>>12   leshort    0    application/x-dbf
774 #
775 #0      leshort         0x0006          application/x-dbt
776
777 # Debian has entries for the old PGP formats:
778 # pgp:  file(1) magic for Pretty Good Privacy
779 # see http://lists.gnupg.org/pipermail/gnupg-devel/1999-September/016052.html
780 0       beshort         0x9900                  text/PGP key public ring
781 0       beshort         0x9501                  text/PGP key security ring
782 0       beshort         0x9500                  text/PGP key security ring
783 0       beshort         0xa600                  text/PGP encrypted data
784 0       string          -----BEGIN\040PGP       text/PGP armored data
785 >15     string          PUBLIC\040KEY\040BLOCK- public key block
786 >15     string          MESSAGE-                message
787 >15     string          SIGNED\040MESSAGE-      signed message
788 >15     string          PGP\040SIGNATURE-       signature
789 0       beshort         0x8501                  data
790 #
791 # GnuPG Magic:
792 #
793 0       beshort         0x9901                  text/GnuPG key public ring
794 0       beshort         0x8501                  text/OpenPGP data
795
796 # flash:        file(1) magic for Macromedia Flash file format
797 #
798 # See
799 #
800 #       http://www.macromedia.com/software/flash/open/
801 #
802 0       string          FWS
803 >3      byte            x                       application/x-shockwave-flash
804
805 # The following paramaters are created for Namazu.
806 # <http://www.namazu.org/>
807 #
808 # 1999/08/13
809 #0      string          \<!--\ MHonArc          text/html; x-type=mhonarc
810 0       string          BZh                     application/x-bzip2
811
812 # 1999/09/09
813 # VRML (suggested by Masao Takaku)
814 0       string          #VRML\ V1.0\ ascii      model/vrml
815 0       string          #VRML\ V2.0\ utf8       model/vrml
816
817 #------------------------------------------------------------------------------
818 # ichitaro456: file(1) magic for Just System Word Processor Ichitaro
819 #
820 # Contributor kenzo-:
821 # Reversed-engineered JS Ichitaro magic numbers
822 #
823
824 0       string          DOC
825 >43     byte            0x14            application/ichitaro4
826 >144    string  JDASH           application/ichitaro4
827
828 0       string          DOC
829 >43     byte            0x15            application/ichitaro5
830
831 0       string          DOC
832 >43     byte            0x16            application/ichitaro6
833
834 #------------------------------------------------------------------------------
835 # office97: file(1) magic for MicroSoft Office files
836 #
837 # Contributor kenzo-:
838 # Reversed-engineered MS Office magic numbers
839 #
840
841 #0       string          \320\317\021\340\241\261\032\341
842 #>48     byte            0x1B            application/excel
843
844 2080    string  Microsoft\ Excel\ 5.0\ Worksheet        application/excel
845 2114    string  Biff5                                   application/excel
846
847 0       string  \224\246\056            application/msword
848
849 0       belong  0x31be0000              application/msword
850
851 0       string  PO^Q`                   application/msword
852
853 0       string  \320\317\021\340\241\261\032\341
854 >546    string  bjbj                    application/msword
855 >546    string  jbjb                    application/msword
856
857 512     string  R\0o\0o\0t\0\ \0E\0n\0t\0r\0y   application/msword
858
859 2080    string  Microsoft\ Word\ 6.0\ Document  application/msword
860 2080    string  Documento\ Microsoft\ Word\ 6   application/msword
861 2112    string  MSWordDoc                       application/msword
862
863 #0      string  \320\317\021\340\241\261\032\341        application/powerpoint
864 0       string  \320\317\021\340\241\261\032\341        application/msword
865
866 0       string  #\ PaCkAgE\ DaTaStReAm  application/x-svr4-package
867
868
869 # WinNT/WinCE PE files (Warner Losh, imp@village.org)
870 #
871 128             string  PE\000\000      application/octet-stream
872 0               string  PE\000\000      application/octet-stream
873
874 # miscellaneous formats
875 0               string  LZ              application/octet-stream
876
877 # DOS device drivers by Joerg Jenderek
878 0       belong          0xffffffff      application/octet-stream
879
880 # .EXE formats (Greg Roelofs, newt@uchicago.edu)
881 #
882 0               string  MZ
883 >24             string  @               application/octet-stream
884
885 0               string  MZ
886 >30             string  Copyright\ 1989-1990\ PKWARE\ Inc.      application/x-zip
887
888 0               string  MZ
889 >30             string  PKLITE\ Copr.   application/x-zip
890
891 0               string  MZ
892 >36             string  LHa's\ SFX      application/x-lha
893
894 0               string  MZ              application/octet-stream
895
896 # LHA archiver
897 2               string  -lh
898 >6              string  -               application/x-lha
899
900
901 # Zoo archiver
902 20              lelong  0xfdc4a7dc      application/x-zoo
903
904 # ARC archiver
905 0               lelong&0x8080ffff       0x0000081a      application/x-arc
906 0               lelong&0x8080ffff       0x0000091a      application/x-arc
907 0               lelong&0x8080ffff       0x0000021a      application/x-arc
908 0               lelong&0x8080ffff       0x0000031a      application/x-arc
909 0               lelong&0x8080ffff       0x0000041a      application/x-arc
910 0               lelong&0x8080ffff       0x0000061a      application/x-arc
911
912 # Microsoft Outlook's Transport Neutral Encapsulation Format (TNEF)
913 0               lelong  0x223e9f78      application/ms-tnef
914
915 # From: stephane.loeuillet@tiscali.f
916 # http://www.djvuzone.org/
917 0       string          AT&TFORM        image/x.djvu
918
919 # Danny Milosavljevic <danny.milo@gmx.net>
920 # this are adrift (adventure game standard) game files, extension .taf
921 # depending on version magic continues with 0x93453E6139FA (V 4.0)
922 # 0x9445376139FA (V 3.90)
923 # 0x9445366139FA (V 3.80)
924 # this is from source (http://www.adrift.org.uk/) and I have some taf
925 # files, and checked them.
926 #0      belong  0x3C423FC9
927 #>4     belong  0x6A87C2CF      application/x-adrift
928 #0      string  \000\000\001\000        image/x-ico
929
930 # Quark Xpress 3 Files:
931 # (made the mimetype up)
932 0       string  \0\0MMXPR3\0    application/x-quark-xpress-3
933
934 # EET archive
935 # From: Tilman Sauerbeck <tilman@code-monkey.de>
936 0       belong  0x1ee7ff00      application/x-eet
937
938 # From: Denis Knauf, via gentoo.
939 0       string  fLaC            audio/x-flac
940 0       string  CWS             application/x-shockwave-flash
941
942 # Hangul Document Files:
943 # Reversed-engineered HWP magic numbers
944 # From: Won-Kyu Park <wkpark@kldp.org>
945 512     string          R\0o\0o\0t\0    application/x-hwp
946
947 0       string/c        BEGIN:VCARD     text/x-vcard
948 0       string          WordPro\0       application/vnd.lotus-wordpro
949 0       string          WordPro\r\373   application/vnd.lotus-wordpro
950 0       string          CPC\262         image/cpi
951
952
953 128     string          DICM            application/dicom
954
955 # Symbian installation files
956 8       lelong  0x10000419      application/vnd.symbian.install
957 0       lelong  0x10201A7A      x-epoc/x-sisx-app