]> CyberLeo.Net >> Repos - FreeBSD/releng/10.3.git/blob - contrib/file/magic/Magdir/mach
Update file(1) to new version with security update. [EN-18:02.file]
[FreeBSD/releng/10.3.git] / contrib / file / magic / Magdir / mach
1
2 #------------------------------------------------------------
3 # $File: mach,v 1.23 2015/10/15 21:51:22 christos Exp $
4 # Mach has two magic numbers, 0xcafebabe and 0xfeedface.
5 # Unfortunately the first, cafebabe, is shared with
6 # Java ByteCode, so they are both handled in the file "cafebabe".
7 # The "feedface" ones are handled herein.
8 #------------------------------------------------------------
9 # if set, it's for the 64-bit version of the architecture
10 # yes, this is separate from the low-order magic number bit
11 # it's also separate from the "64-bit libraries" bit in the
12 # upper 8 bits of the CPU subtype
13
14 0       name    mach-o-cpu
15 >0      belong&0x01000000       0
16 #
17 # 32-bit ABIs.
18 #
19 #                               1       vax
20 >>0     belong&0x00ffffff       1
21 >>>4            belong&0x00ffffff       0       vax
22 >>>4            belong&0x00ffffff       1       vax11/780
23 >>>4            belong&0x00ffffff       2       vax11/785
24 >>>4            belong&0x00ffffff       3       vax11/750
25 >>>4            belong&0x00ffffff       4       vax11/730
26 >>>4            belong&0x00ffffff       5       uvaxI
27 >>>4            belong&0x00ffffff       6       uvaxII
28 >>>4            belong&0x00ffffff       7       vax8200
29 >>>4            belong&0x00ffffff       8       vax8500
30 >>>4            belong&0x00ffffff       9       vax8600
31 >>>4            belong&0x00ffffff       10      vax8650
32 >>>4            belong&0x00ffffff       11      vax8800
33 >>>4            belong&0x00ffffff       12      uvaxIII
34 >>>4            belong&0x00ffffff       >12     vax subarchitecture=%d
35 >>0     belong&0x00ffffff       2       romp
36 >>0     belong&0x00ffffff       3       architecture=3
37 >>0     belong&0x00ffffff       4       ns32032
38 >>0     belong&0x00ffffff       5       ns32332
39 >>0     belong&0x00ffffff       6       m68k
40 #                               7       x86
41 >>0     belong&0x00ffffff       7
42 >>>4    belong&0x0000000f       3               i386
43 >>>4    belong&0x0000000f       4               i486
44 >>>>4   belong&0x00fffff0       0
45 >>>>4   belong&0x00fffff0       0x80            \bsx
46 >>>4    belong&0x0000000f       5               i586
47 >>>4    belong&0x0000000f       6
48 >>>>4   belong&0x00fffff0       0               p6
49 >>>>4   belong&0x00fffff0       0x10            pentium_pro
50 >>>>4   belong&0x00fffff0       0x20            pentium_2_m0x20
51 >>>>4   belong&0x00fffff0       0x30            pentium_2_m3
52 >>>>4   belong&0x00fffff0       0x40            pentium_2_m0x40
53 >>>>4   belong&0x00fffff0       0x50            pentium_2_m5
54 >>>>4   belong&0x00fffff0       >0x50           pentium_2_m0x%x
55 >>>4    belong&0x0000000f       7               celeron
56 >>>>4   belong&0x00fffff0       0x00            \b_m0x%x
57 >>>>4   belong&0x00fffff0       0x10            \b_m0x%x
58 >>>>4   belong&0x00fffff0       0x20            \b_m0x%x
59 >>>>4   belong&0x00fffff0       0x30            \b_m0x%x
60 >>>>4   belong&0x00fffff0       0x40            \b_m0x%x
61 >>>>4   belong&0x00fffff0       0x50            \b_m0x%x
62 >>>>4   belong&0x00fffff0       0x60
63 >>>>4   belong&0x00fffff0       0x70            \b_mobile
64 >>>>4   belong&0x00fffff0       >0x70           \b_m0x%x
65 >>>4    belong&0x0000000f       8               pentium_3
66 >>>>4   belong&0x00fffff0       0x00
67 >>>>4   belong&0x00fffff0       0x10            \b_m
68 >>>>4   belong&0x00fffff0       0x20            \b_xeon
69 >>>>4   belong&0x00fffff0       >0x20           \b_m0x%x
70 >>>4    belong&0x0000000f       9               pentiumM
71 >>>>4   belong&0x00fffff0       0x00
72 >>>>4   belong&0x00fffff0       >0x00           \b_m0x%x
73 >>>4    belong&0x0000000f       10              pentium_4
74 >>>>4   belong&0x00fffff0       0x00
75 >>>>4   belong&0x00fffff0       0x10            \b_m
76 >>>>4   belong&0x00fffff0       >0x10           \b_m0x%x
77 >>>4    belong&0x0000000f       11              itanium
78 >>>>4   belong&0x00fffff0       0x00
79 >>>>4   belong&0x00fffff0       0x10            \b_2
80 >>>>4   belong&0x00fffff0       >0x10           \b_m0x%x
81 >>>4    belong&0x0000000f       12              xeon
82 >>>>4   belong&0x00fffff0       0x00
83 >>>>4   belong&0x00fffff0       0x10            \b_mp
84 >>>>4   belong&0x00fffff0       >0x10           \b_m0x%x
85 >>>4    belong&0x0000000f       >12             ia32 family=%d
86 >>>>4   belong&0x00fffff0       0x00
87 >>>>4   belong&0x00fffff0       >0x00           model=%x
88 >>0     belong&0x00ffffff       8       mips
89 >>>4            belong&0x00ffffff       1       R2300
90 >>>4            belong&0x00ffffff       2       R2600
91 >>>4            belong&0x00ffffff       3       R2800
92 >>>4            belong&0x00ffffff       4       R2000a
93 >>>4            belong&0x00ffffff       5       R2000
94 >>>4            belong&0x00ffffff       6       R3000a
95 >>>4            belong&0x00ffffff       7       R3000
96 >>>4            belong&0x00ffffff       >7      subarchitecture=%d
97 >>0     belong&0x00ffffff       9       ns32532
98 >>0     belong&0x00ffffff       10      mc98000
99 >>0     belong&0x00ffffff       11      hppa
100 >>>4            belong&0x00ffffff       0       7100
101 >>>4            belong&0x00ffffff       1       7100LC
102 >>>4            belong&0x00ffffff       >1      subarchitecture=%d
103 >>0     belong&0x00ffffff       12      arm
104 >>>4            belong&0x00ffffff       0
105 >>>4            belong&0x00ffffff       1       subarchitecture=%d
106 >>>4            belong&0x00ffffff       2       subarchitecture=%d
107 >>>4            belong&0x00ffffff       3       subarchitecture=%d
108 >>>4            belong&0x00ffffff       4       subarchitecture=%d
109 >>>4            belong&0x00ffffff       5       \bv4t
110 >>>4            belong&0x00ffffff       6       \bv6
111 >>>4            belong&0x00ffffff       7       \bv5tej
112 >>>4            belong&0x00ffffff       8       \bxscale
113 >>>4            belong&0x00ffffff       9       \bv7
114 >>>4            belong&0x00ffffff       10      \bv7f
115 >>>4            belong&0x00ffffff       11      \bv7s
116 >>>4            belong&0x00ffffff       12      \bv7k
117 >>>4            belong&0x00ffffff       13      \bv8
118 >>>4            belong&0x00ffffff       14      \bv6m
119 >>>4            belong&0x00ffffff       15      \bv7m
120 >>>4            belong&0x00ffffff       16      \bv7em
121 >>>4            belong&0x00ffffff       >16     subarchitecture=%d
122 #                               13      m88k
123 >>0     belong&0x00ffffff       13
124 >>>4            belong&0x00ffffff       0       mc88000
125 >>>4            belong&0x00ffffff       1       mc88100
126 >>>4            belong&0x00ffffff       2       mc88110
127 >>>4            belong&0x00ffffff       >2      mc88000 subarchitecture=%d
128 >>0     belong&0x00ffffff       14      SPARC
129 >>0     belong&0x00ffffff       15      i860g
130 >>0     belong&0x00ffffff       16      alpha
131 >>0     belong&0x00ffffff       17      rs6000
132 >>0     belong&0x00ffffff       18      ppc
133 >>>4            belong&0x00ffffff       0
134 >>>4            belong&0x00ffffff       1       \b_601
135 >>>4            belong&0x00ffffff       2       \b_602
136 >>>4            belong&0x00ffffff       3       \b_603
137 >>>4            belong&0x00ffffff       4       \b_603e
138 >>>4            belong&0x00ffffff       5       \b_603ev
139 >>>4            belong&0x00ffffff       6       \b_604
140 >>>4            belong&0x00ffffff       7       \b_604e
141 >>>4            belong&0x00ffffff       8       \b_620
142 >>>4            belong&0x00ffffff       9       \b_650
143 >>>4            belong&0x00ffffff       10      \b_7400
144 >>>4            belong&0x00ffffff       11      \b_7450
145 >>>4            belong&0x00ffffff       100     \b_970
146 >>>4            belong&0x00ffffff       >100    subarchitecture=%d
147 >>0     belong&0x00ffffff       >18     architecture=%d
148 >0      belong&0x01000000       0x01000000
149 #
150 # 64-bit ABIs.
151 #
152 >>0     belong&0x00ffffff       0       64-bit architecture=%d
153 >>0     belong&0x00ffffff       1       64-bit architecture=%d
154 >>0     belong&0x00ffffff       2       64-bit architecture=%d
155 >>0     belong&0x00ffffff       3       64-bit architecture=%d
156 >>0     belong&0x00ffffff       4       64-bit architecture=%d
157 >>0     belong&0x00ffffff       5       64-bit architecture=%d
158 >>0     belong&0x00ffffff       6       64-bit architecture=%d
159 >>0     belong&0x00ffffff       7       x86_64
160 >>>4            belong&0x00ffffff       0       subarchitecture=%d
161 >>>4            belong&0x00ffffff       1       subarchitecture=%d
162 >>>4            belong&0x00ffffff       2       subarchitecture=%d
163 >>>4            belong&0x00ffffff       3
164 >>>4            belong&0x00ffffff       4       \b_arch1
165 >>>4            belong&0x00ffffff       8       \b_haswell
166 >>>4            belong&0x00ffffff       >4      subarchitecture=%d
167 >>0     belong&0x00ffffff       8       64-bit architecture=%d
168 >>0     belong&0x00ffffff       9       64-bit architecture=%d
169 >>0     belong&0x00ffffff       10      64-bit architecture=%d
170 >>0     belong&0x00ffffff       11      64-bit architecture=%d
171 >>0     belong&0x00ffffff       12      arm64
172 >>>4            belong&0x00ffffff       0
173 >>>4            belong&0x00ffffff       1       \bv8
174 >>0     belong&0x00ffffff       13      64-bit architecture=%d
175 >>0     belong&0x00ffffff       14      64-bit architecture=%d
176 >>0     belong&0x00ffffff       15      64-bit architecture=%d
177 >>0     belong&0x00ffffff       16      64-bit architecture=%d
178 >>0     belong&0x00ffffff       17      64-bit architecture=%d
179 >>0     belong&0x00ffffff       18      ppc64
180 >>>4            belong&0x00ffffff       0
181 >>>4            belong&0x00ffffff       1               \b_601
182 >>>4            belong&0x00ffffff       2               \b_602
183 >>>4            belong&0x00ffffff       3               \b_603
184 >>>4            belong&0x00ffffff       4               \b_603e
185 >>>4            belong&0x00ffffff       5               \b_603ev
186 >>>4            belong&0x00ffffff       6               \b_604
187 >>>4            belong&0x00ffffff       7               \b_604e
188 >>>4            belong&0x00ffffff       8               \b_620
189 >>>4            belong&0x00ffffff       9               \b_650
190 >>>4            belong&0x00ffffff       10              \b_7400
191 >>>4            belong&0x00ffffff       11              \b_7450
192 >>>4            belong&0x00ffffff       100             \b_970
193 >>>4            belong&0x00ffffff       >100            subarchitecture=%d
194 >>0     belong&0x00ffffff       >18     64-bit architecture=%d
195
196
197 0       name            mach-o-be
198 >0      byte            0xcf            64-bit
199 >4      use             mach-o-cpu
200 >12     belong          1               object
201 >12     belong          2               executable
202 >12     belong          3               fixed virtual memory shared library
203 >12     belong          4               core
204 >12     belong          5               preload executable
205 >12     belong          6               dynamically linked shared library
206 >12     belong          7               dynamic linker
207 >12     belong          8               bundle
208 >12     belong          9               dynamically linked shared library stub
209 >12     belong          10              dSYM companion file
210 >12     belong          11              kext bundle
211 >12     belong          >11
212 >>12    belong          x               filetype=%d
213 >24     belong          >0              \b, flags:<
214 >>24    belong          &0x0000001      \bNOUNDEFS
215 >>24    belong          &0x0000002      \b|INCRLINK
216 >>24    belong          &0x0000004      \b|DYLDLINK
217 >>24    belong          &0x0000008      \b|BINDATLOAD
218 >>24    belong          &0x0000010      \b|PREBOUND
219 >>24    belong          &0x0000020      \b|SPLIT_SEGS
220 >>24    belong          &0x0000040      \b|LAZY_INIT
221 >>24    belong          &0x0000080      \b|TWOLEVEL
222 >>24    belong          &0x0000100      \b|FORCE_FLAT
223 >>24    belong          &0x0000200      \b|NOMULTIDEFS
224 >>24    belong          &0x0000400      \b|NOFIXPREBINDING
225 >>24    belong          &0x0000800      \b|PREBINDABLE
226 >>24    belong          &0x0001000      \b|ALLMODSBOUND
227 >>24    belong          &0x0002000      \b|SUBSECTIONS_VIA_SYMBOLS
228 >>24    belong          &0x0004000      \b|CANONICAL
229 >>24    belong          &0x0008000      \b|WEAK_DEFINES
230 >>24    belong          &0x0010000      \b|BINDS_TO_WEAK
231 >>24    belong          &0x0020000      \b|ALLOW_STACK_EXECUTION
232 >>24    belong          &0x0040000      \b|ROOT_SAFE
233 >>24    belong          &0x0080000      \b|SETUID_SAFE
234 >>24    belong          &0x0100000      \b|NO_REEXPORTED_DYLIBS
235 >>24    belong          &0x0200000      \b|PIE
236 >>24    belong          &0x0400000      \b|DEAD_STRIPPABLE_DYLIB
237 >>24    belong          &0x0800000      \b|HAS_TLV_DESCRIPTORS
238 >>24    belong          &0x1000000      \b|NO_HEAP_EXECUTION
239 >>24    belong          &0x2000000      \b|APP_EXTENSION_SAFE
240 >>24    belong          x               \b>
241
242 #
243 0       lelong&0xfffffffe       0xfeedface      Mach-O
244 !:strength +1
245 !:mime application/x-mach-binary
246 >0      use     \^mach-o-be
247
248 0       belong&0xfffffffe       0xfeedface      Mach-O
249 !:strength +1
250 !:mime application/x-mach-binary
251 >0      use     mach-o-be