1 #------------------------------------------------------------------------------
2 # hp: file(1) magic for Hewlett Packard machines (see also "printer")
4 # XXX - somebody should figure out whether any byte order needs to be
5 # applied to the "TML" stuff; I'm assuming the Apollo stuff is
6 # big-endian as it was mostly 68K-based.
8 # I think the 500 series was the old stack-based machines, running a
9 # UNIX environment atop the "SUN kernel"; dunno whether it was
10 # big-endian or little-endian.
12 # Daniel Quinlan (quinlan@yggdrasil.com): hp200 machines are 68010 based;
13 # hp300 are 68020+68881 based; hp400 are also 68k. The following basic
14 # HP magic is useful for reference, but using "long" magic is a better
15 # practice in order to avoid collisions.
17 # Guy Harris (guy@netapp.com): some additions to this list came from
18 # HP-UX 10.0's "/usr/include/sys/unistd.h" (68030, 68040, PA-RISC 1.1,
19 # 1.2, and 2.0). The 1.2 and 2.0 stuff isn't in the HP-UX 10.0
20 # "/etc/magic", though, except for the "archive file relocatable library"
21 # stuff, and the 68030 and 68040 stuff isn't there at all - are they not
22 # used in executables, or have they just not yet updated "/etc/magic"
25 # 0 beshort 200 hp200 (68010) BSD binary
26 # 0 beshort 300 hp300 (68020+68881) BSD binary
27 # 0 beshort 0x20c hp200/300 HP-UX binary
28 # 0 beshort 0x20d hp400 (68030) HP-UX binary
29 # 0 beshort 0x20e hp400 (68040?) HP-UX binary
30 # 0 beshort 0x20b PA-RISC1.0 HP-UX binary
31 # 0 beshort 0x210 PA-RISC1.1 HP-UX binary
32 # 0 beshort 0x211 PA-RISC1.2 HP-UX binary
33 # 0 beshort 0x214 PA-RISC2.0 HP-UX binary
36 # The "misc" stuff needs a byte order; the archives look suspiciously
37 # like the old 177545 archives (0xff65 = 0177545).
40 0 beshort 0627 Apollo m68k COFF executable
41 >18 beshort ^040000 not stripped
42 >22 beshort >0 - version %ld
43 0 beshort 0624 apollo a88k COFF executable
44 >18 beshort ^040000 not stripped
45 >22 beshort >0 - version %ld
46 0 long 01203604016 TML 0123 byte-order format
47 0 long 01702407010 TML 1032 byte-order format
48 0 long 01003405017 TML 2301 byte-order format
49 0 long 01602007412 TML 3210 byte-order format
51 0 belong 0x02100106 PA-RISC1.1 relocatable object
52 0 belong 0x02100107 PA-RISC1.1 executable
53 >168 belong &0x00000004 dynamically linked
54 >(144) belong 0x054ef630 dynamically linked
55 >96 belong >0 - not stripped
57 0 belong 0x02100108 PA-RISC1.1 shared executable
58 >168 belong&0x4 0x4 dynamically linked
59 >(144) belong 0x054ef630 dynamically linked
60 >96 belong >0 - not stripped
62 0 belong 0x0210010b PA-RISC1.1 demand-load executable
63 >168 belong&0x4 0x4 dynamically linked
64 >(144) belong 0x054ef630 dynamically linked
65 >96 belong >0 - not stripped
67 0 belong 0x0210010e PA-RISC1.1 shared library
68 >96 belong >0 - not stripped
70 0 belong 0x0210010d PA-RISC1.1 dynamic load library
71 >96 belong >0 - not stripped
74 0 belong 0x02140106 PA-RISC2.0 relocatable object
76 0 belong 0x02140107 PA-RISC2.0 executable
77 >168 belong &0x00000004 dynamically linked
78 >(144) belong 0x054ef630 dynamically linked
79 >96 belong >0 - not stripped
81 0 belong 0x02140108 PA-RISC2.0 shared executable
82 >168 belong &0x00000004 dynamically linked
83 >(144) belong 0x054ef630 dynamically linked
84 >96 belong >0 - not stripped
86 0 belong 0x0214010b PA-RISC2.0 demand-load executable
87 >168 belong &0x00000004 dynamically linked
88 >(144) belong 0x054ef630 dynamically linked
89 >96 belong >0 - not stripped
91 0 belong 0x0214010e PA-RISC2.0 shared library
92 >96 belong >0 - not stripped
94 0 belong 0x0214010d PA-RISC2.0 dynamic load library
95 >96 belong >0 - not stripped
98 0 belong 0x020b0106 PA-RISC1.0 relocatable object
100 0 belong 0x020b0107 PA-RISC1.0 executable
101 >168 belong&0x4 0x4 dynamically linked
102 >(144) belong 0x054ef630 dynamically linked
103 >96 belong >0 - not stripped
105 0 belong 0x020b0108 PA-RISC1.0 shared executable
106 >168 belong&0x4 0x4 dynamically linked
107 >(144) belong 0x054ef630 dynamically linked
108 >96 belong >0 - not stripped
110 0 belong 0x020b010b PA-RISC1.0 demand-load executable
111 >168 belong&0x4 0x4 dynamically linked
112 >(144) belong 0x054ef630 dynamically linked
113 >96 belong >0 - not stripped
115 0 belong 0x020b010e PA-RISC1.0 shared library
116 >96 belong >0 - not stripped
118 0 belong 0x020b010d PA-RISC1.0 dynamic load library
119 >96 belong >0 - not stripped
121 0 belong 0x213c6172 archive file
122 >68 belong 0x020b0619 - PA-RISC1.0 relocatable library
123 >68 belong 0x02100619 - PA-RISC1.1 relocatable library
124 >68 belong 0x02110619 - PA-RISC1.2 relocatable library
125 >68 belong 0x02140619 - PA-RISC2.0 relocatable library
128 0 long 0x02080106 HP s500 relocatable executable
129 >16 long >0 - version %ld
131 0 long 0x02080107 HP s500 executable
132 >16 long >0 - version %ld
134 0 long 0x02080108 HP s500 pure executable
135 >16 long >0 - version %ld
138 0 belong 0x020c0108 HP s200 pure executable
139 >4 beshort >0 - version %ld
140 >8 belong &0x80000000 save fp regs
141 >8 belong &0x40000000 dynamically linked
142 >8 belong &0x20000000 debuggable
143 >36 belong >0 not stripped
145 0 belong 0x020c0107 HP s200 executable
146 >4 beshort >0 - version %ld
147 >8 belong &0x80000000 save fp regs
148 >8 belong &0x40000000 dynamically linked
149 >8 belong &0x20000000 debuggable
150 >36 belong >0 not stripped
152 0 belong 0x020c010b HP s200 demand-load executable
153 >4 beshort >0 - version %ld
154 >8 belong &0x80000000 save fp regs
155 >8 belong &0x40000000 dynamically linked
156 >8 belong &0x20000000 debuggable
157 >36 belong >0 not stripped
159 0 belong 0x020c0106 HP s200 relocatable executable
160 >4 beshort >0 - version %ld
161 >6 beshort >0 - highwater %d
162 >8 belong &0x80000000 save fp regs
163 >8 belong &0x20000000 debuggable
164 >8 belong &0x10000000 PIC
166 0 belong 0x020a0108 HP s200 (2.x release) pure executable
167 >4 beshort >0 - version %ld
168 >36 belong >0 not stripped
170 0 belong 0x020a0107 HP s200 (2.x release) executable
171 >4 beshort >0 - version %ld
172 >36 belong >0 not stripped
174 0 belong 0x020c010e HP s200 shared library
175 >4 beshort >0 - version %ld
176 >6 beshort >0 - highwater %d
177 >36 belong >0 not stripped
179 0 belong 0x020c010d HP s200 dynamic load library
180 >4 beshort >0 - version %ld
181 >6 beshort >0 - highwater %d
182 >36 belong >0 not stripped
185 0 long 0x0000ff65 HP old archive
186 0 long 0x020aff65 HP s200 old archive
187 0 long 0x020cff65 HP s200 old archive
188 0 long 0x0208ff65 HP s500 old archive
190 0 long 0x015821a6 HP core file
192 0 long 0x4da7eee8 HP-WINDOWS font
193 >8 byte >0 - version %ld
194 0 string Bitmapfile HP Bitmapfile
196 0 string IMGfile CIS compimg HP Bitmapfile
198 #0 short 0x8000 lif file
199 0 long 0x020c010c compiled Lisp
201 0 string msgcat01 HP NLS message catalog,
202 >8 long >0 %d messages
204 # Summary: HP-48/49 calculator
205 # Created by: phk@data.fls.dk
206 # Modified by (1): AMAKAWA Shuhei <sa264@cam.ac.uk>
207 # Modified by (2): Samuel Thibault <samuel.thibault@ens-lyon.org> (HP49 support)
209 >4 string 48 48 binary
210 >4 string 49 49 binary
212 >8 leshort 0x2911 (ADR)
213 >8 leshort 0x2933 (REAL)
214 >8 leshort 0x2955 (LREAL)
215 >8 leshort 0x2977 (COMPLX)
216 >8 leshort 0x299d (LCOMPLX)
217 >8 leshort 0x29bf (CHAR)
218 >8 leshort 0x29e8 (ARRAY)
219 >8 leshort 0x2a0a (LNKARRAY)
220 >8 leshort 0x2a2c (STRING)
221 >8 leshort 0x2a4e (HXS)
222 >8 leshort 0x2a74 (LIST)
223 >8 leshort 0x2a96 (DIR)
224 >8 leshort 0x2ab8 (ALG)
225 >8 leshort 0x2ada (UNIT)
226 >8 leshort 0x2afc (TAGGED)
227 >8 leshort 0x2b1e (GROB)
228 >8 leshort 0x2b40 (LIB)
229 >8 leshort 0x2b62 (BACKUP)
230 >8 leshort 0x2b88 (LIBDATA)
231 >8 leshort 0x2d9d (PROG)
232 >8 leshort 0x2dcc (CODE)
233 >8 leshort 0x2e48 (GNAME)
234 >8 leshort 0x2e6d (LNAME)
235 >8 leshort 0x2e92 (XLIB)
237 0 string %%HP: HP text
238 >6 string T(0) - T(0)
239 >6 string T(1) - T(1)
240 >6 string T(2) - T(2)
241 >6 string T(3) - T(3)
245 >14 string F(.) F(.);
246 >14 string F(,) F(,);
249 # Summary: HP-38/39 calculator
250 # Created by: Samuel Thibault <samuel.thibault@ens-lyon.org>
256 >7 string A (Directory List)
259 >7 string D (Program)
260 >7 string E (Variable)
263 >7 string H (Library)
264 >7 string I (Target List)
265 >7 string J (ASCII Vector specification)
266 >7 string K (wildcard)
268 # Summary: HP-38/39 calculator
269 # Created by: Samuel Thibault <samuel.thibault@ens-lyon.org>
275 >7 string A (Directory List)
278 >7 string D (Program)
279 >7 string E (Variable)
282 >7 string H (Library)
283 >7 string I (Target List)
284 >7 string J (ASCII Vector specification)
285 >7 string K (wildcard)
287 # hpBSD magic numbers
288 0 beshort 200 hp200 (68010) BSD
289 >2 beshort 0407 impure binary
290 >2 beshort 0410 read-only binary
291 >2 beshort 0413 demand paged binary
292 0 beshort 300 hp300 (68020+68881) BSD
293 >2 beshort 0407 impure binary
294 >2 beshort 0410 read-only binary
295 >2 beshort 0413 demand paged binary
297 # From David Gero <dgero@nortelnetworks.com>
298 # HP-UX 10.20 core file format from /usr/include/sys/core.h
299 # Unfortunately, HP-UX uses corehead blocks without specifying the order
300 # There are four we care about:
301 # CORE_KERNEL, which starts with the string "HP-UX"
302 # CORE_EXEC, which contains the name of the command
303 # CORE_PROC, which contains the signal number that caused the core dump
304 # CORE_FORMAT, which contains the version of the core file format (== 1)
305 # The only observed order in real core files is KERNEL, EXEC, FORMAT, PROC
306 # but we include all 6 variations of the order of the first 3, and
307 # assume that PROC will always be last
308 # Order 1: KERNEL, EXEC, FORMAT, PROC
317 >>>>>>>>0xB4 belong 4 core file
318 >>>>>>>>>0x90 string >\0 from '%s'
319 >>>>>>>>>0xC4 belong 3 - received SIGQUIT
320 >>>>>>>>>0xC4 belong 4 - received SIGILL
321 >>>>>>>>>0xC4 belong 5 - received SIGTRAP
322 >>>>>>>>>0xC4 belong 6 - received SIGABRT
323 >>>>>>>>>0xC4 belong 7 - received SIGEMT
324 >>>>>>>>>0xC4 belong 8 - received SIGFPE
325 >>>>>>>>>0xC4 belong 10 - received SIGBUS
326 >>>>>>>>>0xC4 belong 11 - received SIGSEGV
327 >>>>>>>>>0xC4 belong 12 - received SIGSYS
328 >>>>>>>>>0xC4 belong 33 - received SIGXCPU
329 >>>>>>>>>0xC4 belong 34 - received SIGXFSZ
330 # Order 2: KERNEL, FORMAT, EXEC, PROC
334 >>>>>>0x60 belong 0x100
335 >>>>>>>0x6C belong 0x44
336 >>>>>>>>0xB4 belong 4 core file
337 >>>>>>>>>0xA4 string >\0 from '%s'
338 >>>>>>>>>0xC4 belong 3 - received SIGQUIT
339 >>>>>>>>>0xC4 belong 4 - received SIGILL
340 >>>>>>>>>0xC4 belong 5 - received SIGTRAP
341 >>>>>>>>>0xC4 belong 6 - received SIGABRT
342 >>>>>>>>>0xC4 belong 7 - received SIGEMT
343 >>>>>>>>>0xC4 belong 8 - received SIGFPE
344 >>>>>>>>>0xC4 belong 10 - received SIGBUS
345 >>>>>>>>>0xC4 belong 11 - received SIGSEGV
346 >>>>>>>>>0xC4 belong 12 - received SIGSYS
347 >>>>>>>>>0xC4 belong 33 - received SIGXCPU
348 >>>>>>>>>0xC4 belong 34 - received SIGXFSZ
349 # Order 3: FORMAT, KERNEL, EXEC, PROC
355 >>>>>0x20 belong 0x3C
356 >>>>>>0x60 belong 0x100
357 >>>>>>>0x6C belong 0x44
358 >>>>>>>>0xB4 belong 4 core file
359 >>>>>>>>>0xA4 string >\0 from '%s'
360 >>>>>>>>>0xC4 belong 3 - received SIGQUIT
361 >>>>>>>>>0xC4 belong 4 - received SIGILL
362 >>>>>>>>>0xC4 belong 5 - received SIGTRAP
363 >>>>>>>>>0xC4 belong 6 - received SIGABRT
364 >>>>>>>>>0xC4 belong 7 - received SIGEMT
365 >>>>>>>>>0xC4 belong 8 - received SIGFPE
366 >>>>>>>>>0xC4 belong 10 - received SIGBUS
367 >>>>>>>>>0xC4 belong 11 - received SIGSEGV
368 >>>>>>>>>0xC4 belong 12 - received SIGSYS
369 >>>>>>>>>0xC4 belong 33 - received SIGXCPU
370 >>>>>>>>>0xC4 belong 34 - received SIGXFSZ
371 # Order 4: EXEC, KERNEL, FORMAT, PROC
380 >>>>>>>>0xB4 belong 4 core file
381 >>>>>>>>>0x44 string >\0 from '%s'
382 >>>>>>>>>0xC4 belong 3 - received SIGQUIT
383 >>>>>>>>>0xC4 belong 4 - received SIGILL
384 >>>>>>>>>0xC4 belong 5 - received SIGTRAP
385 >>>>>>>>>0xC4 belong 6 - received SIGABRT
386 >>>>>>>>>0xC4 belong 7 - received SIGEMT
387 >>>>>>>>>0xC4 belong 8 - received SIGFPE
388 >>>>>>>>>0xC4 belong 10 - received SIGBUS
389 >>>>>>>>>0xC4 belong 11 - received SIGSEGV
390 >>>>>>>>>0xC4 belong 12 - received SIGSYS
391 >>>>>>>>>0xC4 belong 33 - received SIGXCPU
392 >>>>>>>>>0xC4 belong 34 - received SIGXFSZ
393 # Order 5: FORMAT, EXEC, KERNEL, PROC
398 >>>>0x14 belong 0x100
399 >>>>>0x20 belong 0x44
401 >>>>>>>0x74 belong 0x3C
402 >>>>>>>>0xB4 belong 4 core file
403 >>>>>>>>>0x58 string >\0 from '%s'
404 >>>>>>>>>0xC4 belong 3 - received SIGQUIT
405 >>>>>>>>>0xC4 belong 4 - received SIGILL
406 >>>>>>>>>0xC4 belong 5 - received SIGTRAP
407 >>>>>>>>>0xC4 belong 6 - received SIGABRT
408 >>>>>>>>>0xC4 belong 7 - received SIGEMT
409 >>>>>>>>>0xC4 belong 8 - received SIGFPE
410 >>>>>>>>>0xC4 belong 10 - received SIGBUS
411 >>>>>>>>>0xC4 belong 11 - received SIGSEGV
412 >>>>>>>>>0xC4 belong 12 - received SIGSYS
413 >>>>>>>>>0xC4 belong 33 - received SIGXCPU
414 >>>>>>>>>0xC4 belong 34 - received SIGXFSZ
415 # Order 6: EXEC, FORMAT, KERNEL, PROC
422 >>>>>>>0x74 belong 0x2C
423 >>>>>>>>0xB4 belong 4 core file
424 >>>>>>>>>0x44 string >\0 from '%s'
425 >>>>>>>>>0xC4 belong 3 - received SIGQUIT
426 >>>>>>>>>0xC4 belong 4 - received SIGILL
427 >>>>>>>>>0xC4 belong 5 - received SIGTRAP
428 >>>>>>>>>0xC4 belong 6 - received SIGABRT
429 >>>>>>>>>0xC4 belong 7 - received SIGEMT
430 >>>>>>>>>0xC4 belong 8 - received SIGFPE
431 >>>>>>>>>0xC4 belong 10 - received SIGBUS
432 >>>>>>>>>0xC4 belong 11 - received SIGSEGV
433 >>>>>>>>>0xC4 belong 12 - received SIGSYS
434 >>>>>>>>>0xC4 belong 33 - received SIGXCPU
435 >>>>>>>>>0xC4 belong 34 - received SIGXFSZ