bottleneck testcase based on rubbos
[bottlenecks.git] / rubbos / app / httpd-2.0.64 / docs / conf / magic
1 # Magic data for mod_mime_magic Apache module (originally for file(1) command)
2 # The module is described in /manual/mod/mod_mime_magic.html
3 #
4 # The format is 4-5 columns:
5 #    Column #1: byte number to begin checking from, ">" indicates continuation
6 #    Column #2: type of data to match
7 #    Column #3: contents of data to match
8 #    Column #4: MIME type of result
9 #    Column #5: MIME encoding of result (optional)
10
11 #------------------------------------------------------------------------------
12 # Localstuff:  file(1) magic for locally observed files
13 # Add any locally observed files here.
14
15 #------------------------------------------------------------------------------
16 # end local stuff
17 #------------------------------------------------------------------------------
18
19 #------------------------------------------------------------------------------
20 # Java
21
22 0       short           0xcafe
23 >2      short           0xbabe          application/java
24
25 #------------------------------------------------------------------------------
26 # audio:  file(1) magic for sound formats
27 #
28 # from Jan Nicolai Langfeldt <janl@ifi.uio.no>,
29 #
30
31 # Sun/NeXT audio data
32 0       string          .snd
33 >12     belong          1               audio/basic
34 >12     belong          2               audio/basic
35 >12     belong          3               audio/basic
36 >12     belong          4               audio/basic
37 >12     belong          5               audio/basic
38 >12     belong          6               audio/basic
39 >12     belong          7               audio/basic
40
41 >12     belong          23              audio/x-adpcm
42
43 # DEC systems (e.g. DECstation 5000) use a variant of the Sun/NeXT format
44 # that uses little-endian encoding and has a different magic number
45 # (0x0064732E in little-endian encoding).
46 0       lelong          0x0064732E      
47 >12     lelong          1               audio/x-dec-basic
48 >12     lelong          2               audio/x-dec-basic
49 >12     lelong          3               audio/x-dec-basic
50 >12     lelong          4               audio/x-dec-basic
51 >12     lelong          5               audio/x-dec-basic
52 >12     lelong          6               audio/x-dec-basic
53 >12     lelong          7               audio/x-dec-basic
54 #                                       compressed (G.721 ADPCM)
55 >12     lelong          23              audio/x-dec-adpcm
56
57 # Bytes 0-3 of AIFF, AIFF-C, & 8SVX audio files are "FORM"
58 #                                       AIFF audio data
59 8       string          AIFF            audio/x-aiff    
60 #                                       AIFF-C audio data
61 8       string          AIFC            audio/x-aiff    
62 #                                       IFF/8SVX audio data
63 8       string          8SVX            audio/x-aiff    
64
65 # Creative Labs AUDIO stuff
66 #                                       Standard MIDI data
67 0       string  MThd                    audio/unknown   
68 #>9     byte    >0                      (format %d)
69 #>11    byte    >1                      using %d channels
70 #                                       Creative Music (CMF) data
71 0       string  CTMF                    audio/unknown   
72 #                                       SoundBlaster instrument data
73 0       string  SBI                     audio/unknown   
74 #                                       Creative Labs voice data
75 0       string  Creative\ Voice\ File   audio/unknown   
76 ## is this next line right?  it came this way...
77 #>19    byte    0x1A
78 #>23    byte    >0                      - version %d
79 #>22    byte    >0                      \b.%d
80
81 # [GRR 950115:  is this also Creative Labs?  Guessing that first line
82 #  should be string instead of unknown-endian long...]
83 #0      long            0x4e54524b      MultiTrack sound data
84 #0      string          NTRK            MultiTrack sound data
85 #>4     long            x               - version %ld
86
87 # Microsoft WAVE format (*.wav)
88 # [GRR 950115:  probably all of the shorts and longs should be leshort/lelong]
89 #                                       Microsoft RIFF
90 0       string          RIFF            audio/unknown
91 #                                       - WAVE format
92 >8      string          WAVE            audio/x-wav
93 # MPEG audio.
94 0   beshort&0xfff0  0xfff0  audio/mpeg
95 # C64 SID Music files, from Linus Walleij <triad@df.lth.se>
96 0   string      PSID        audio/prs.sid
97
98 #------------------------------------------------------------------------------
99 # c-lang:  file(1) magic for C programs or various scripts
100 #
101
102 # XPM icons (Greg Roelofs, newt@uchicago.edu)
103 # ideally should go into "images", but entries below would tag XPM as C source
104 0       string          /*\ XPM         image/x-xbm     7bit
105
106 # this first will upset you if you're a PL/1 shop... (are there any left?)
107 # in which case rm it; ascmagic will catch real C programs
108 #                                       C or REXX program text
109 0       string          /*              text/plain
110 #                                       C++ program text
111 0       string          //              text/plain
112
113 #------------------------------------------------------------------------------
114 # compress:  file(1) magic for pure-compression formats (no archives)
115 #
116 # compress, gzip, pack, compact, huf, squeeze, crunch, freeze, yabba, whap, etc.
117 #
118 # Formats for various forms of compressed data
119 # Formats for "compress" proper have been moved into "compress.c",
120 # because it tries to uncompress it to figure out what's inside.
121
122 # standard unix compress
123 0       string          \037\235        application/octet-stream        x-compress
124
125 # gzip (GNU zip, not to be confused with [Info-ZIP/PKWARE] zip archiver)
126 0       string          \037\213        application/octet-stream        x-gzip
127
128 # According to gzip.h, this is the correct byte order for packed data.
129 0       string          \037\036        application/octet-stream
130 #
131 # This magic number is byte-order-independent.
132 #
133 0       short           017437          application/octet-stream
134
135 # XXX - why *two* entries for "compacted data", one of which is
136 # byte-order independent, and one of which is byte-order dependent?
137 #
138 # compacted data
139 0       short           0x1fff          application/octet-stream
140 0       string          \377\037        application/octet-stream
141 # huf output
142 0       short           0145405         application/octet-stream
143
144 # Squeeze and Crunch...
145 # These numbers were gleaned from the Unix versions of the programs to
146 # handle these formats.  Note that I can only uncrunch, not crunch, and
147 # I didn't have a crunched file handy, so the crunch number is untested.
148 #                               Keith Waclena <keith@cerberus.uchicago.edu>
149 #0      leshort         0x76FF          squeezed data (CP/M, DOS)
150 #0      leshort         0x76FE          crunched data (CP/M, DOS)
151
152 # Freeze
153 #0      string          \037\237        Frozen file 2.1
154 #0      string          \037\236        Frozen file 1.0 (or gzip 0.5)
155
156 # lzh?
157 #0      string          \037\240        LZH compressed data
158
159 #------------------------------------------------------------------------------
160 # frame:  file(1) magic for FrameMaker files
161 #
162 # This stuff came on a FrameMaker demo tape, most of which is
163 # copyright, but this file is "published" as witness the following:
164 #
165 0       string          \<MakerFile     application/x-frame
166 0       string          \<MIFFile       application/x-frame
167 0       string          \<MakerDictionary       application/x-frame
168 0       string          \<MakerScreenFon        application/x-frame
169 0       string          \<MML           application/x-frame
170 0       string          \<Book          application/x-frame
171 0       string          \<Maker         application/x-frame
172
173 #------------------------------------------------------------------------------
174 # html:  file(1) magic for HTML (HyperText Markup Language) docs
175 #
176 # from Daniel Quinlan <quinlan@yggdrasil.com>
177 # and Anna Shergold <anna@inext.co.uk>
178 #
179 0   string      \<!DOCTYPE\ HTML    text/html
180 0   string      \<!doctype\ html    text/html
181 0   string      \<HEAD      text/html
182 0   string      \<head      text/html
183 0   string      \<TITLE     text/html
184 0   string      \<title     text/html
185 0   string      \<html      text/html
186 0   string      \<HTML      text/html
187 0   string      \<!--       text/html
188 0   string      \<h1        text/html
189 0   string      \<H1        text/html
190
191 # XML eXtensible Markup Language, from Linus Walleij <triad@df.lth.se>
192 0   string      \<?xml      text/xml
193
194 #------------------------------------------------------------------------------
195 # images:  file(1) magic for image formats (see also "c-lang" for XPM bitmaps)
196 #
197 # originally from jef@helios.ee.lbl.gov (Jef Poskanzer),
198 # additions by janl@ifi.uio.no as well as others. Jan also suggested
199 # merging several one- and two-line files into here.
200 #
201 # XXX - byte order for GIF and TIFF fields?
202 # [GRR:  TIFF allows both byte orders; GIF is probably little-endian]
203 #
204
205 # [GRR:  what the hell is this doing in here?]
206 #0      string          xbtoa           btoa'd file
207
208 # PBMPLUS
209 #                                       PBM file
210 0       string          P1              image/x-portable-bitmap 7bit
211 #                                       PGM file
212 0       string          P2              image/x-portable-greymap        7bit
213 #                                       PPM file
214 0       string          P3              image/x-portable-pixmap 7bit
215 #                                       PBM "rawbits" file
216 0       string          P4              image/x-portable-bitmap
217 #                                       PGM "rawbits" file
218 0       string          P5              image/x-portable-greymap
219 #                                       PPM "rawbits" file
220 0       string          P6              image/x-portable-pixmap
221
222 # NIFF (Navy Interchange File Format, a modification of TIFF)
223 # [GRR:  this *must* go before TIFF]
224 0       string          IIN1            image/x-niff
225
226 # TIFF and friends
227 #                                       TIFF file, big-endian
228 0       string          MM              image/tiff
229 #                                       TIFF file, little-endian
230 0       string          II              image/tiff
231
232 # possible GIF replacements; none yet released!
233 # (Greg Roelofs, newt@uchicago.edu)
234 #
235 # GRR 950115:  this was mine ("Zip GIF"):
236 #                                       ZIF image (GIF+deflate alpha)
237 0       string          GIF94z          image/unknown
238 #
239 # GRR 950115:  this is Jeremy Wohl's Free Graphics Format (better):
240 #                                       FGF image (GIF+deflate beta)
241 0       string          FGF95a          image/unknown
242 #
243 # GRR 950115:  this is Thomas Boutell's Portable Bitmap Format proposal
244 # (best; not yet implemented):
245 #                                       PBF image (deflate compression)
246 0       string          PBF             image/unknown
247
248 # GIF
249 0       string          GIF             image/gif
250
251 # JPEG images
252 0       beshort         0xffd8          image/jpeg
253
254 # PC bitmaps (OS/2, Windoze BMP files)  (Greg Roelofs, newt@uchicago.edu)
255 0       string          BM              image/bmp
256 #>14    byte            12              (OS/2 1.x format)
257 #>14    byte            64              (OS/2 2.x format)
258 #>14    byte            40              (Windows 3.x format)
259 #0      string          IC              icon
260 #0      string          PI              pointer
261 #0      string          CI              color icon
262 #0      string          CP              color pointer
263 #0      string          BA              bitmap array
264
265
266 #------------------------------------------------------------------------------
267 # lisp:  file(1) magic for lisp programs
268 #
269 # various lisp types, from Daniel Quinlan (quinlan@yggdrasil.com)
270 0       string  ;;                      text/plain      8bit
271 # Emacs 18 - this is always correct, but not very magical.
272 0       string  \012(                   application/x-elc
273 # Emacs 19
274 0       string  ;ELC\023\000\000\000    application/x-elc
275
276 #------------------------------------------------------------------------------
277 # mail.news:  file(1) magic for mail and news
278 #
279 # There are tests to ascmagic.c to cope with mail and news.
280 0       string          Relay-Version:  message/rfc822  7bit
281 0       string          #!\ rnews       message/rfc822  7bit
282 0       string          N#!\ rnews      message/rfc822  7bit
283 0       string          Forward\ to     message/rfc822  7bit
284 0       string          Pipe\ to        message/rfc822  7bit
285 0       string          Return-Path:    message/rfc822  7bit
286 0       string          Path:           message/news    8bit
287 0       string          Xref:           message/news    8bit
288 0       string          From:           message/rfc822  7bit
289 0       string          Article         message/news    8bit
290 #------------------------------------------------------------------------------
291 # msword: file(1) magic for MS Word files
292 #
293 # Contributor claims:
294 # Reversed-engineered MS Word magic numbers
295 #
296
297 0       string          \376\067\0\043                  application/msword
298 0       string          \333\245-\0\0\0                 application/msword
299
300 # disable this one because it applies also to other
301 # Office/OLE documents for which msword is not correct. See PR#2608.
302 #0      string          \320\317\021\340\241\261        application/msword
303
304
305
306 #------------------------------------------------------------------------------
307 # printer:  file(1) magic for printer-formatted files
308 #
309
310 # PostScript
311 0       string          %!              application/postscript
312 0       string          \004%!          application/postscript
313
314 # Acrobat
315 # (due to clamen@cs.cmu.edu)
316 0       string          %PDF-           application/pdf
317
318 #------------------------------------------------------------------------------
319 # sc:  file(1) magic for "sc" spreadsheet
320 #
321 38      string          Spreadsheet     application/x-sc
322
323 #------------------------------------------------------------------------------
324 # tex:  file(1) magic for TeX files
325 #
326 # XXX - needs byte-endian stuff (big-endian and little-endian DVI?)
327 #
328 # From <conklin@talisman.kaleida.com>
329
330 # Although we may know the offset of certain text fields in TeX DVI
331 # and font files, we can't use them reliably because they are not
332 # zero terminated. [but we do anyway, christos]
333 0       string          \367\002        application/x-dvi
334 #0      string          \367\203        TeX generic font data
335 #0      string          \367\131        TeX packed font data
336 #0      string          \367\312        TeX virtual font data
337 #0      string          This\ is\ TeX,  TeX transcript text     
338 #0      string          This\ is\ METAFONT,     METAFONT transcript text
339
340 # There is no way to detect TeX Font Metric (*.tfm) files without
341 # breaking them apart and reading the data.  The following patterns
342 # match most *.tfm files generated by METAFONT or afm2tfm.
343 #2      string          \000\021        TeX font metric data
344 #2      string          \000\022        TeX font metric data
345 #>34    string          >\0             (%s)
346
347 # Texinfo and GNU Info, from Daniel Quinlan (quinlan@yggdrasil.com)
348 #0      string          \\input\ texinfo        Texinfo source text
349 #0      string          This\ is\ Info\ file    GNU Info text
350
351 # correct TeX magic for Linux (and maybe more)
352 # from Peter Tobias (tobias@server.et-inf.fho-emden.de)
353 #
354 0       leshort         0x02f7          application/x-dvi
355
356 # RTF - Rich Text Format
357 0       string          {\\rtf          application/rtf
358
359 #------------------------------------------------------------------------------
360 # animation:  file(1) magic for animation/movie formats
361 #
362 # animation formats, originally from vax@ccwf.cc.utexas.edu (VaX#n8)
363 #                                               MPEG file
364 0       string          \000\000\001\263        video/mpeg
365 #
366 # The contributor claims:
367 #   I couldn't find a real magic number for these, however, this
368 #   -appears- to work.  Note that it might catch other files, too,
369 #   so BE CAREFUL!
370 #
371 # Note that title and author appear in the two 20-byte chunks
372 # at decimal offsets 2 and 22, respectively, but they are XOR'ed with
373 # 255 (hex FF)! DL format SUCKS BIG ROCKS.
374 #
375 #                                               DL file version 1 , medium format (160x100, 4 images/screen)
376 0       byte            1                       video/unknown
377 0       byte            2                       video/unknown
378 # Quicktime video, from Linus Walleij <triad@df.lth.se>
379 # from Apple quicktime file format documentation.
380 4   string      moov        video/quicktime
381 4   string      mdat        video/quicktime
382