1# $OpenBSD: hp,v 1.7 2009/04/24 18:54:34 chl Exp $ 2 3#------------------------------------------------------------------------------ 4# hp: file(1) magic for Hewlett Packard machines (see also "printer") 5# 6# XXX - somebody should figure out whether any byte order needs to be 7# applied to the "TML" stuff; I'm assuming the Apollo stuff is 8# big-endian as it was mostly 68K-based. 9# 10# I think the 500 series was the old stack-based machines, running a 11# UNIX environment atop the "SUN kernel"; dunno whether it was 12# big-endian or little-endian. 13# 14# Daniel Quinlan (quinlan@yggdrasil.com): hp200 machines are 68010 based; 15# hp300 are 68020+68881 based; hp400 are also 68k. The following basic 16# HP magic is useful for reference, but using "long" magic is a better 17# practice in order to avoid collisions. 18# 19# Guy Harris (guy@netapp.com): some additions to this list came from 20# HP-UX 10.0's "/usr/include/sys/unistd.h" (68030, 68040, PA-RISC 1.1, 21# 1.2, and 2.0). The 1.2 and 2.0 stuff isn't in the HP-UX 10.0 22# "/etc/magic", though, except for the "archive file relocatable library" 23# stuff, and the 68030 and 68040 stuff isn't there at all - are they not 24# used in executables, or have they just not yet updated "/etc/magic" 25# completely? 26# 27# 0 beshort 200 hp200 (68010) BSD binary 28# 0 beshort 300 hp300 (68020+68881) BSD binary 29# 0 beshort 0x20c hp200/300 HP-UX binary 30# 0 beshort 0x20d hp400 (68030) HP-UX binary 31# 0 beshort 0x20e hp400 (68040?) HP-UX binary 32# 0 beshort 0x20b PA-RISC1.0 HP-UX binary 33# 0 beshort 0x210 PA-RISC1.1 HP-UX binary 34# 0 beshort 0x211 PA-RISC1.2 HP-UX binary 35# 0 beshort 0x214 PA-RISC2.0 HP-UX binary 36 37# 38# The "misc" stuff needs a byte order; the archives look suspiciously 39# like the old 177545 archives (0xff65 = 0177545). 40# 41#### Old Apollo stuff 420 beshort 0627 Apollo m68k COFF executable 43>18 beshort ^040000 not stripped 44>22 beshort >0 - version %ld 450 beshort 0624 apollo a88k COFF executable 46>18 beshort ^040000 not stripped 47>22 beshort >0 - version %ld 480 long 01203604016 TML 0123 byte-order format 490 long 01702407010 TML 1032 byte-order format 500 long 01003405017 TML 2301 byte-order format 510 long 01602007412 TML 3210 byte-order format 52#### PA-RISC 1.1 530 belong 0x02100106 PA-RISC1.1 relocatable object 540 belong 0x02100107 PA-RISC1.1 executable 55>168 belong &0x00000004 dynamically linked 56>(144) belong 0x054ef630 dynamically linked 57>96 belong >0 - not stripped 58 590 belong 0x02100108 PA-RISC1.1 shared executable 60>168 belong&0x4 0x4 dynamically linked 61>(144) belong 0x054ef630 dynamically linked 62>96 belong >0 - not stripped 63 640 belong 0x0210010b PA-RISC1.1 demand-load executable 65>168 belong&0x4 0x4 dynamically linked 66>(144) belong 0x054ef630 dynamically linked 67>96 belong >0 - not stripped 68 690 belong 0x0210010e PA-RISC1.1 shared library 70>96 belong >0 - not stripped 71 720 belong 0x0210010d PA-RISC1.1 dynamic load library 73>96 belong >0 - not stripped 74 75#### PA-RISC 2.0 760 belong 0x02140106 PA-RISC2.0 relocatable object 77 780 belong 0x02140107 PA-RISC2.0 executable 79>168 belong &0x00000004 dynamically linked 80>(144) belong 0x054ef630 dynamically linked 81>96 belong >0 - not stripped 82 830 belong 0x02140108 PA-RISC2.0 shared executable 84>168 belong &0x00000004 dynamically linked 85>(144) belong 0x054ef630 dynamically linked 86>96 belong >0 - not stripped 87 880 belong 0x0214010b PA-RISC2.0 demand-load executable 89>168 belong &0x00000004 dynamically linked 90>(144) belong 0x054ef630 dynamically linked 91>96 belong >0 - not stripped 92 930 belong 0x0214010e PA-RISC2.0 shared library 94>96 belong >0 - not stripped 95 960 belong 0x0214010d PA-RISC2.0 dynamic load library 97>96 belong >0 - not stripped 98 99#### 800 1000 belong 0x020b0106 PA-RISC1.0 relocatable object 101 1020 belong 0x020b0107 PA-RISC1.0 executable 103>168 belong&0x4 0x4 dynamically linked 104>(144) belong 0x054ef630 dynamically linked 105>96 belong >0 - not stripped 106 1070 belong 0x020b0108 PA-RISC1.0 shared executable 108>168 belong&0x4 0x4 dynamically linked 109>(144) belong 0x054ef630 dynamically linked 110>96 belong >0 - not stripped 111 1120 belong 0x020b010b PA-RISC1.0 demand-load executable 113>168 belong&0x4 0x4 dynamically linked 114>(144) belong 0x054ef630 dynamically linked 115>96 belong >0 - not stripped 116 1170 belong 0x020b010e PA-RISC1.0 shared library 118>96 belong >0 - not stripped 119 1200 belong 0x020b010d PA-RISC1.0 dynamic load library 121>96 belong >0 - not stripped 122 1230 belong 0x213c6172 archive file 124>68 belong 0x020b0619 - PA-RISC1.0 relocatable library 125>68 belong 0x02100619 - PA-RISC1.1 relocatable library 126>68 belong 0x02110619 - PA-RISC1.2 relocatable library 127>68 belong 0x02140619 - PA-RISC2.0 relocatable library 128 129#### 500 1300 long 0x02080106 HP s500 relocatable executable 131>16 long >0 - version %ld 132 1330 long 0x02080107 HP s500 executable 134>16 long >0 - version %ld 135 1360 long 0x02080108 HP s500 pure executable 137>16 long >0 - version %ld 138 139#### 200 1400 belong 0x020c0108 HP s200 pure executable 141>4 beshort >0 - version %ld 142>8 belong &0x80000000 save fp regs 143>8 belong &0x40000000 dynamically linked 144>8 belong &0x20000000 debuggable 145>36 belong >0 not stripped 146 1470 belong 0x020c0107 HP s200 executable 148>4 beshort >0 - version %ld 149>8 belong &0x80000000 save fp regs 150>8 belong &0x40000000 dynamically linked 151>8 belong &0x20000000 debuggable 152>36 belong >0 not stripped 153 1540 belong 0x020c010b HP s200 demand-load executable 155>4 beshort >0 - version %ld 156>8 belong &0x80000000 save fp regs 157>8 belong &0x40000000 dynamically linked 158>8 belong &0x20000000 debuggable 159>36 belong >0 not stripped 160 1610 belong 0x020c0106 HP s200 relocatable executable 162>4 beshort >0 - version %ld 163>6 beshort >0 - highwater %d 164>8 belong &0x80000000 save fp regs 165>8 belong &0x20000000 debuggable 166>8 belong &0x10000000 PIC 167 1680 belong 0x020a0108 HP s200 (2.x release) pure executable 169>4 beshort >0 - version %ld 170>36 belong >0 not stripped 171 1720 belong 0x020a0107 HP s200 (2.x release) executable 173>4 beshort >0 - version %ld 174>36 belong >0 not stripped 175 1760 belong 0x020c010e HP s200 shared library 177>4 beshort >0 - version %ld 178>6 beshort >0 - highwater %d 179>36 belong >0 not stripped 180 1810 belong 0x020c010d HP s200 dynamic load library 182>4 beshort >0 - version %ld 183>6 beshort >0 - highwater %d 184>36 belong >0 not stripped 185 186#### MISC 1870 long 0x0000ff65 HP old archive 1880 long 0x020aff65 HP s200 old archive 1890 long 0x020cff65 HP s200 old archive 1900 long 0x0208ff65 HP s500 old archive 191 1920 long 0x015821a6 HP core file 193 1940 long 0x4da7eee8 HP-WINDOWS font 195>8 byte >0 - version %ld 1960 string Bitmapfile HP Bitmapfile 197 1980 string IMGfile CIS compimg HP Bitmapfile 199# XXX - see "lif" 200#0 short 0x8000 lif file 2010 long 0x020c010c compiled Lisp 202 2030 string msgcat01 HP NLS message catalog, 204>8 long >0 %d messages 205 206# addendum to /etc/magic with HP-48sx file-types by phk@data.fls.dk 1jan92 2070 string HPHP4 HP 208>5 string 8 48 binary 209>5 string 9 49 binary 210>7 byte >64 - Rev %c 211>8 leshort 0x2911 (ADR) 212>8 leshort 0x2933 (REAL) 213>8 leshort 0x2955 (LREAL) 214>8 leshort 0x2977 (COMPLX) 215>8 leshort 0x299d (LCOMPLX) 216>8 leshort 0x29bf (CHAR) 217>8 leshort 0x29e8 (ARRAY) 218>8 leshort 0x2a0a (LNKARRAY) 219>8 leshort 0x2a2c (STRING) 220>8 leshort 0x2a4e (HXS) 221>8 leshort 0x2a74 (LIST) 222>8 leshort 0x2a96 (DIR) 223>8 leshort 0x2ab8 (ALG) 224>8 leshort 0x2ada (UNIT) 225>8 leshort 0x2afc (TAGGED) 226>8 leshort 0x2b1e (GROB) 227>8 leshort 0x2b40 (LIB) 228>8 leshort 0x2b62 (BACKUP) 229>8 leshort 0x2b88 (LIBDATA) 230>8 leshort 0x2d9d (PROG) 231>8 leshort 0x2dcc (CODE) 232>8 leshort 0x2e48 (GNAME) 233>8 leshort 0x2e6d (LNAME) 234>8 leshort 0x2e92 (XLIB) 235 2360 search/1 %%HP: HP text 237>6 string T(0) - T(0) 238>6 string T(1) - T(1) 239>6 string T(2) - T(2) 240>6 string T(3) - T(3) 241>10 string A(D) A(D) 242>10 string A(R) A(R) 243>10 string A(G) A(G) 244>14 string F(.) F(.); 245>14 string F(,) F(,); 246 2470 string HP3 HP 248>3 string 8 38 249>3 string 9 39 250>4 string Bin binary 251>4 string Asc ASCII 252>7 string A (Directory List) 253>7 string B (Zaplet) 254>7 string C (Note) 255>7 string D (Program) 256>7 string E (Variable) 257>7 string F (List) 258>7 string G (Matrix) 259>7 string H (Library) 260>7 string I (Target List) 261>7 string J (ASCII Vector specification) 262>7 string K (wildcard) 263 264# hpBSD magic numbers 2650 beshort 200 hp200 (68010) BSD 266>2 beshort 0407 impure binary 267>2 beshort 0410 read-only binary 268>2 beshort 0413 demand paged binary 2690 beshort 300 hp300 (68020+68881) BSD 270>2 beshort 0407 impure binary 271>2 beshort 0410 read-only binary 272>2 beshort 0413 demand paged binary 273# 274# From David Gero <dgero@nortelnetworks.com> 275# HP-UX 10.20 core file format from /usr/include/sys/core.h 276# Unfortunately, HP-UX uses corehead blocks without specifying the order 277# There are four we care about: 278# CORE_KERNEL, which starts with the string "HP-UX" 279# CORE_EXEC, which contains the name of the command 280# CORE_PROC, which contains the signal number that caused the core dump 281# CORE_FORMAT, which contains the version of the core file format (== 1) 282# The only observed order in real core files is KERNEL, EXEC, FORMAT, PROC 283# but we include all 6 variations of the order of the first 3, and 284# assume that PROC will always be last 285# Order 1: KERNEL, EXEC, FORMAT, PROC 2860x10 string HP-UX 287>0 belong 2 288>>0xC belong 0x3C 289>>>0x4C belong 0x100 290>>>>0x58 belong 0x44 291>>>>>0xA0 belong 1 292>>>>>>0xAC belong 4 293>>>>>>>0xB0 belong 1 294>>>>>>>>0xB4 belong 4 core file 295>>>>>>>>>0x90 string >\0 from '%s' 296>>>>>>>>>0xC4 belong 3 - received SIGQUIT 297>>>>>>>>>0xC4 belong 4 - received SIGILL 298>>>>>>>>>0xC4 belong 5 - received SIGTRAP 299>>>>>>>>>0xC4 belong 6 - received SIGABRT 300>>>>>>>>>0xC4 belong 7 - received SIGEMT 301>>>>>>>>>0xC4 belong 8 - received SIGFPE 302>>>>>>>>>0xC4 belong 10 - received SIGBUS 303>>>>>>>>>0xC4 belong 11 - received SIGSEGV 304>>>>>>>>>0xC4 belong 12 - received SIGSYS 305>>>>>>>>>0xC4 belong 33 - received SIGXCPU 306>>>>>>>>>0xC4 belong 34 - received SIGXFSZ 307# Order 2: KERNEL, FORMAT, EXEC, PROC 308>>>0x4C belong 1 309>>>>0x58 belong 4 310>>>>>0x5C belong 1 311>>>>>>0x60 belong 0x100 312>>>>>>>0x6C belong 0x44 313>>>>>>>>0xB4 belong 4 core file 314>>>>>>>>>0xA4 string >\0 from '%s' 315>>>>>>>>>0xC4 belong 3 - received SIGQUIT 316>>>>>>>>>0xC4 belong 4 - received SIGILL 317>>>>>>>>>0xC4 belong 5 - received SIGTRAP 318>>>>>>>>>0xC4 belong 6 - received SIGABRT 319>>>>>>>>>0xC4 belong 7 - received SIGEMT 320>>>>>>>>>0xC4 belong 8 - received SIGFPE 321>>>>>>>>>0xC4 belong 10 - received SIGBUS 322>>>>>>>>>0xC4 belong 11 - received SIGSEGV 323>>>>>>>>>0xC4 belong 12 - received SIGSYS 324>>>>>>>>>0xC4 belong 33 - received SIGXCPU 325>>>>>>>>>0xC4 belong 34 - received SIGXFSZ 326# Order 3: FORMAT, KERNEL, EXEC, PROC 3270x24 string HP-UX 328>0 belong 1 329>>0xC belong 4 330>>>0x10 belong 1 331>>>>0x14 belong 2 332>>>>>0x20 belong 0x3C 333>>>>>>0x60 belong 0x100 334>>>>>>>0x6C belong 0x44 335>>>>>>>>0xB4 belong 4 core file 336>>>>>>>>>0xA4 string >\0 from '%s' 337>>>>>>>>>0xC4 belong 3 - received SIGQUIT 338>>>>>>>>>0xC4 belong 4 - received SIGILL 339>>>>>>>>>0xC4 belong 5 - received SIGTRAP 340>>>>>>>>>0xC4 belong 6 - received SIGABRT 341>>>>>>>>>0xC4 belong 7 - received SIGEMT 342>>>>>>>>>0xC4 belong 8 - received SIGFPE 343>>>>>>>>>0xC4 belong 10 - received SIGBUS 344>>>>>>>>>0xC4 belong 11 - received SIGSEGV 345>>>>>>>>>0xC4 belong 12 - received SIGSYS 346>>>>>>>>>0xC4 belong 33 - received SIGXCPU 347>>>>>>>>>0xC4 belong 34 - received SIGXFSZ 348# Order 4: EXEC, KERNEL, FORMAT, PROC 3490x64 string HP-UX 350>0 belong 0x100 351>>0xC belong 0x44 352>>>0x54 belong 2 353>>>>0x60 belong 0x3C 354>>>>>0xA0 belong 1 355>>>>>>0xAC belong 4 356>>>>>>>0xB0 belong 1 357>>>>>>>>0xB4 belong 4 core file 358>>>>>>>>>0x44 string >\0 from '%s' 359>>>>>>>>>0xC4 belong 3 - received SIGQUIT 360>>>>>>>>>0xC4 belong 4 - received SIGILL 361>>>>>>>>>0xC4 belong 5 - received SIGTRAP 362>>>>>>>>>0xC4 belong 6 - received SIGABRT 363>>>>>>>>>0xC4 belong 7 - received SIGEMT 364>>>>>>>>>0xC4 belong 8 - received SIGFPE 365>>>>>>>>>0xC4 belong 10 - received SIGBUS 366>>>>>>>>>0xC4 belong 11 - received SIGSEGV 367>>>>>>>>>0xC4 belong 12 - received SIGSYS 368>>>>>>>>>0xC4 belong 33 - received SIGXCPU 369>>>>>>>>>0xC4 belong 34 - received SIGXFSZ 370# Order 5: FORMAT, EXEC, KERNEL, PROC 3710x78 string HP-UX 372>0 belong 1 373>>0xC belong 4 374>>>0x10 belong 1 375>>>>0x14 belong 0x100 376>>>>>0x20 belong 0x44 377>>>>>>0x68 belong 2 378>>>>>>>0x74 belong 0x3C 379>>>>>>>>0xB4 belong 4 core file 380>>>>>>>>>0x58 string >\0 from '%s' 381>>>>>>>>>0xC4 belong 3 - received SIGQUIT 382>>>>>>>>>0xC4 belong 4 - received SIGILL 383>>>>>>>>>0xC4 belong 5 - received SIGTRAP 384>>>>>>>>>0xC4 belong 6 - received SIGABRT 385>>>>>>>>>0xC4 belong 7 - received SIGEMT 386>>>>>>>>>0xC4 belong 8 - received SIGFPE 387>>>>>>>>>0xC4 belong 10 - received SIGBUS 388>>>>>>>>>0xC4 belong 11 - received SIGSEGV 389>>>>>>>>>0xC4 belong 12 - received SIGSYS 390>>>>>>>>>0xC4 belong 33 - received SIGXCPU 391>>>>>>>>>0xC4 belong 34 - received SIGXFSZ 392# Order 6: EXEC, FORMAT, KERNEL, PROC 393>0 belong 0x100 394>>0xC belong 0x44 395>>>0x54 belong 1 396>>>>0x60 belong 4 397>>>>>0x64 belong 1 398>>>>>>0x68 belong 2 399>>>>>>>0x74 belong 0x2C 400>>>>>>>>0xB4 belong 4 core file 401>>>>>>>>>0x44 string >\0 from '%s' 402>>>>>>>>>0xC4 belong 3 - received SIGQUIT 403>>>>>>>>>0xC4 belong 4 - received SIGILL 404>>>>>>>>>0xC4 belong 5 - received SIGTRAP 405>>>>>>>>>0xC4 belong 6 - received SIGABRT 406>>>>>>>>>0xC4 belong 7 - received SIGEMT 407>>>>>>>>>0xC4 belong 8 - received SIGFPE 408>>>>>>>>>0xC4 belong 10 - received SIGBUS 409>>>>>>>>>0xC4 belong 11 - received SIGSEGV 410>>>>>>>>>0xC4 belong 12 - received SIGSYS 411>>>>>>>>>0xC4 belong 33 - received SIGXCPU 412>>>>>>>>>0xC4 belong 34 - received SIGXFSZ 413 414# From: AMAKAWA Shuhei <sa264@cam.ac.uk> 415#0 string HPHP49- HP49 binary 416 417