github.com/krum110487/go-htaccess@v0.0.0-20240316004156-60641c8e7598/tests/data/apache_2_2_34/conf/magic (about)

     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