Don't build the gdb-related documents in binutils-2.15.
[dragonfly.git] / contrib / file / Magdir / compress
1
2 #------------------------------------------------------------------------------
3 # compress:  file(1) magic for pure-compression formats (no archives)
4 #
5 # compress, gzip, pack, compact, huf, squeeze, crunch, freeze, yabba, etc.
6 #
7 # Formats for various forms of compressed data
8 # Formats for "compress" proper have been moved into "compress.c",
9 # because it tries to uncompress it to figure out what's inside.
10
11 # standard unix compress
12 0       string          \037\235        compress'd data
13 >2      byte&0x80       >0              block compressed
14 >2      byte&0x1f       x               %d bits
15
16 # gzip (GNU zip, not to be confused with Info-ZIP or PKWARE zip archiver)
17 #   Edited by Chris Chittleborough <cchittleborough@yahoo.com.au>, March 2002
18 #       * Original filename is only at offset 10 if "extra field" absent
19 #       * Produce shorter output - notably, only report compression methods
20 #         other than 8 ("deflate", the only method defined in RFC 1952).
21 0       string          \037\213        gzip compressed data
22 >2      byte            <8              \b, reserved method
23 >2      byte            >8              \b, unknown method
24 >3      byte            &0x01           \b, ASCII
25 >3      byte            &0x02           \b, continuation
26 >3      byte            &0x04           \b, extra field
27 >3      byte&0xC        =0x08
28 >>10    string          x               \b, was "%s"
29 >9      byte            =0x00           \b, from MS-DOS
30 >9      byte            =0x01           \b, from Amiga
31 >9      byte            =0x02           \b, from VMS
32 >9      byte            =0x03           \b, from Unix
33 >9      byte            =0x05           \b, from Atari
34 >9      byte            =0x06           \b, from OS/2
35 >9      byte            =0x07           \b, from MacOS
36 >9      byte            =0x0A           \b, from Tops/20
37 >9      byte            =0x0B           \b, from Win/32
38 >3      byte            &0x10           \b, comment
39 >3      byte            &0x20           \b, encrypted
40 ### >4  ledate          x               last modified: %s,
41 >8      byte            2               \b, max compression
42 >8      byte            4               \b, max speed
43
44 # packed data, Huffman (minimum redundancy) codes on a byte-by-byte basis
45 0       string          \037\036        packed data
46 >2      belong          >1              \b, %d characters originally
47 >2      belong          =1              \b, %d character originally
48 #
49 # This magic number is byte-order-independent.  XXX - Does that mean this
50 # is big-endian, little-endian, either, or that you can't tell?
51 # this short is valid for SunOS
52 0       short           017437          old packed data
53
54 # XXX - why *two* entries for "compacted data", one of which is
55 # byte-order independent, and one of which is byte-order dependent?
56 #
57 0       short           0x1fff          compacted data
58 # This string is valid for SunOS (BE) and a matching "short" is listed
59 # in the Ultrix (LE) magic file.
60 0       string          \377\037        compacted data
61 0       short           0145405         huf output
62
63 # bzip2
64 0       string          BZh             bzip2 compressed data
65 >3      byte            >47             \b, block size = %c00k
66
67 # squeeze and crunch
68 # Michael Haardt <michael@cantor.informatik.rwth-aachen.de>
69 0       beshort         0x76FF          squeezed data,
70 >4      string          x               original name %s
71 0       beshort         0x76FE          crunched data,
72 >2      string          x               original name %s
73 0       beshort         0x76FD          LZH compressed data,
74 >2      string          x               original name %s
75
76 # Freeze
77 0       string          \037\237        frozen file 2.1
78 0       string          \037\236        frozen file 1.0 (or gzip 0.5)
79
80 # SCO compress -H (LZH)
81 0       string          \037\240        SCO compress -H (LZH) data
82
83 # European GSM 06.10 is a provisional standard for full-rate speech
84 # transcoding, prI-ETS 300 036, which uses RPE/LTP (residual pulse
85 # excitation/long term prediction) coding at 13 kbit/s.
86 #
87 # There's only a magic nibble (4 bits); that nibble repeats every 33
88 # bytes.  This isn't suited for use, but maybe we can use it someday.
89 #
90 # This will cause very short GSM files to be declared as data and
91 # mismatches to be declared as data too!
92 #0      byte&0xF0       0xd0            data
93 #>33    byte&0xF0       0xd0
94 #>66    byte&0xF0       0xd0
95 #>99    byte&0xF0       0xd0
96 #>132   byte&0xF0       0xd0            GSM 06.10 compressed audio
97
98 # bzip  a block-sorting file compressor
99 #       by Julian Seward <sewardj@cs.man.ac.uk> and others
100 #
101 0       string          BZ              bzip compressed data
102 >2      byte            x               \b, version: %c
103 >3      string          =1              \b, compression block size 100k
104 >3      string          =2              \b, compression block size 200k
105 >3      string          =3              \b, compression block size 300k
106 >3      string          =4              \b, compression block size 400k
107 >3      string          =5              \b, compression block size 500k
108 >3      string          =6              \b, compression block size 600k
109 >3      string          =7              \b, compression block size 700k
110 >3      string          =8              \b, compression block size 800k
111 >3      string          =9              \b, compression block size 900k
112
113 # lzop from <markus.oberhumer@jk.uni-linz.ac.at>
114 0       string          \x89\x4c\x5a\x4f\x00\x0d\x0a\x1a\x0a    lzop compressed data
115 >9      beshort         <0x0940
116 >>9     byte&0xf0       =0x00           - version 0.
117 >>9     beshort&0x0fff  x               \b%03x,
118 >>13    byte            1               LZO1X-1,
119 >>13    byte            2               LZO1X-1(15),
120 >>13    byte            3               LZO1X-999,
121 ## >>22 bedate          >0              last modified: %s,
122 >>14    byte            =0x00           os: MS-DOS
123 >>14    byte            =0x01           os: Amiga
124 >>14    byte            =0x02           os: VMS
125 >>14    byte            =0x03           os: Unix
126 >>14    byte            =0x05           os: Atari
127 >>14    byte            =0x06           os: OS/2
128 >>14    byte            =0x07           os: MacOS
129 >>14    byte            =0x0A           os: Tops/20
130 >>14    byte            =0x0B           os: WinNT
131 >>14    byte            =0x0E           os: Win32
132 >9      beshort         >0x0939
133 >>9     byte&0xf0       =0x00           - version 0.
134 >>9     byte&0xf0       =0x10           - version 1.
135 >>9     byte&0xf0       =0x20           - version 2.
136 >>9     beshort&0x0fff  x               \b%03x,
137 >>15    byte            1               LZO1X-1,
138 >>15    byte            2               LZO1X-1(15),
139 >>15    byte            3               LZO1X-999,
140 ## >>25 bedate          >0              last modified: %s,
141 >>17    byte            =0x00           os: MS-DOS
142 >>17    byte            =0x01           os: Amiga
143 >>17    byte            =0x02           os: VMS
144 >>17    byte            =0x03           os: Unix
145 >>17    byte            =0x05           os: Atari
146 >>17    byte            =0x06           os: OS/2
147 >>17    byte            =0x07           os: MacOS
148 >>17    byte            =0x0A           os: Tops/20
149 >>17    byte            =0x0B           os: WinNT
150 >>17    byte            =0x0E           os: Win32
151
152 # 4.3BSD-Quasijarus Strong Compression
153 # http://minnie.tuhs.org/Quasijarus/compress.html
154 0       string          \037\241        Quasijarus strong compressed data
155
156 # From: Cory Dikkers <cdikkers@swbell.net>
157 0       string          XPKF            Amiga xpkf.library compressed data
158 0       string          PP11            Power Packer 1.1 compressed data
159 0       string          PP20            Power Packer 2.0 compressed data,
160 >4      belong          0x09090909      fast compression
161 >4      belong          0x090A0A0A      mediocre compression
162 >4      belong          0x090A0B0B      good compression
163 >4      belong          0x090A0C0C      very good compression
164 >4      belong          0x090A0C0D      best compression
165
166 # 7z archiver, from Thomas Klausner (wiz@danbala.tuwien.ac.at)
167 # http://www.7-zip.org or DOC/7zFormat.txt 
168 #
169 0       string          7z\274\257\047\034      7z archive data,
170 >6      byte            x                       version %d
171 >7      byte            x                       \b.%d