1327e51cbSPeter Avalos 2327e51cbSPeter Avalos#------------------------------------------------------------------------------ 36fca56fbSSascha Wildner# $File: netbsd,v 1.26 2019/01/01 03:11:23 christos Exp $ 4327e51cbSPeter Avalos# netbsd: file(1) magic for NetBSD objects 5327e51cbSPeter Avalos# 6327e51cbSPeter Avalos# All new-style magic numbers are in network byte order. 7e8af9738SPeter Avalos# The old-style magic numbers are indistinguishable from the same magic 8e8af9738SPeter Avalos# numbers used in other systems, and are handled, for all those systems, 9e8af9738SPeter Avalos# in aout. 10327e51cbSPeter Avalos# 11327e51cbSPeter Avalos 126fca56fbSSascha Wildner0 name netbsd-detail 136fca56fbSSascha Wildner>20 lelong x @%#x 146fca56fbSSascha Wildner>4 lelong >0 \b+T=%d 156fca56fbSSascha Wildner>8 lelong >0 \b+D=%d 166fca56fbSSascha Wildner>12 lelong >0 \b+B=%d 176fca56fbSSascha Wildner>16 lelong >0 \b+S=%d 186fca56fbSSascha Wildner>24 lelong >0 \b+TR=%d 196fca56fbSSascha Wildner>28 lelong >0 \b+TD=%d 206fca56fbSSascha Wildner 216fca56fbSSascha Wildner0 name netbsd-4096 22327e51cbSPeter Avalos>0 byte &0x80 23327e51cbSPeter Avalos>>20 lelong <4096 shared library 24327e51cbSPeter Avalos>>20 lelong =4096 dynamically linked executable 25327e51cbSPeter Avalos>>20 lelong >4096 dynamically linked executable 26327e51cbSPeter Avalos>0 byte ^0x80 executable 27327e51cbSPeter Avalos>16 lelong >0 not stripped 286fca56fbSSascha Wildner 296fca56fbSSascha Wildner0 name netbsd-8192 306fca56fbSSascha Wildner>0 byte &0x80 316fca56fbSSascha Wildner>>20 lelong <8192 shared library 326fca56fbSSascha Wildner>>20 lelong =8192 dynamically linked executable 336fca56fbSSascha Wildner>>20 lelong >8192 dynamically linked executable 34327e51cbSPeter Avalos>0 byte ^0x80 executable 35327e51cbSPeter Avalos>16 lelong >0 not stripped 366fca56fbSSascha Wildner>0 use netbsd-detail 376fca56fbSSascha Wildner 386fca56fbSSascha Wildner0 name netbsd-normal 39327e51cbSPeter Avalos>0 byte &0x80 dynamically linked executable 40327e51cbSPeter Avalos>0 byte ^0x80 41327e51cbSPeter Avalos>>0 byte &0x40 position independent 42327e51cbSPeter Avalos>>20 lelong !0 executable 43327e51cbSPeter Avalos>>20 lelong =0 object file 44327e51cbSPeter Avalos>16 lelong >0 not stripped 456fca56fbSSascha Wildner>0 use netbsd-detail 466fca56fbSSascha Wildner 476fca56fbSSascha Wildner0 name netbsd-pure 486fca56fbSSascha Wildner>0 byte &0x80 dynamically linked executable 496fca56fbSSascha Wildner>0 byte ^0x80 executable 506fca56fbSSascha Wildner>16 lelong >0 not stripped 516fca56fbSSascha Wildner>0 use netbsd-detail 526fca56fbSSascha Wildner 536fca56fbSSascha Wildner0 name netbsd-core 54327e51cbSPeter Avalos>12 string >\0 from '%s' 55327e51cbSPeter Avalos>32 lelong !0 (signal %d) 56327e51cbSPeter Avalos 576fca56fbSSascha Wildner0 belong&0377777777 041400413 a.out NetBSD/i386 demand paged 586fca56fbSSascha Wildner>0 use netbsd-4096 596fca56fbSSascha Wildner 606fca56fbSSascha Wildner0 belong&0377777777 041400410 a.out NetBSD/i386 pure 616fca56fbSSascha Wildner>0 use netbsd-pure 626fca56fbSSascha Wildner 636fca56fbSSascha Wildner0 belong&0377777777 041400407 a.out NetBSD/i386 646fca56fbSSascha Wildner>0 use netbsd-normal 656fca56fbSSascha Wildner 666fca56fbSSascha Wildner0 belong&0377777777 041400507 a.out NetBSD/i386 core 676fca56fbSSascha Wildner>0 use netbsd-core 686fca56fbSSascha Wildner 69327e51cbSPeter Avalos0 belong&0377777777 041600413 a.out NetBSD/m68k demand paged 706fca56fbSSascha Wildner>0 use \^netbsd-8192 716fca56fbSSascha Wildner 72327e51cbSPeter Avalos0 belong&0377777777 041600410 a.out NetBSD/m68k pure 736fca56fbSSascha Wildner>0 use \^netbsd-pure 746fca56fbSSascha Wildner 75327e51cbSPeter Avalos0 belong&0377777777 041600407 a.out NetBSD/m68k 766fca56fbSSascha Wildner>0 use \^netbsd-normal 776fca56fbSSascha Wildner 78327e51cbSPeter Avalos0 belong&0377777777 041600507 a.out NetBSD/m68k core 796fca56fbSSascha Wildner>0 use \^netbsd-core 80327e51cbSPeter Avalos 81327e51cbSPeter Avalos0 belong&0377777777 042000413 a.out NetBSD/m68k4k demand paged 826fca56fbSSascha Wildner>0 use \^netbsd-4096 836fca56fbSSascha Wildner 84327e51cbSPeter Avalos0 belong&0377777777 042000410 a.out NetBSD/m68k4k pure 856fca56fbSSascha Wildner>0 use \^netbsd-pure 866fca56fbSSascha Wildner 87327e51cbSPeter Avalos0 belong&0377777777 042000407 a.out NetBSD/m68k4k 886fca56fbSSascha Wildner>0 use \^netbsd-normal 896fca56fbSSascha Wildner 90327e51cbSPeter Avalos0 belong&0377777777 042000507 a.out NetBSD/m68k4k core 916fca56fbSSascha Wildner>0 use \^netbsd-core 92327e51cbSPeter Avalos 93327e51cbSPeter Avalos0 belong&0377777777 042200413 a.out NetBSD/ns32532 demand paged 946fca56fbSSascha Wildner>0 use netbsd-4096 956fca56fbSSascha Wildner 96327e51cbSPeter Avalos0 belong&0377777777 042200410 a.out NetBSD/ns32532 pure 976fca56fbSSascha Wildner>0 use netbsd-pure 986fca56fbSSascha Wildner 99327e51cbSPeter Avalos0 belong&0377777777 042200407 a.out NetBSD/ns32532 1006fca56fbSSascha Wildner>0 use netbsd-normal 1016fca56fbSSascha Wildner 102327e51cbSPeter Avalos0 belong&0377777777 042200507 a.out NetBSD/ns32532 core 1036fca56fbSSascha Wildner>0 use netbsd-core 104327e51cbSPeter Avalos 105327e51cbSPeter Avalos0 belong&0377777777 045200507 a.out NetBSD/powerpc core 1066fca56fbSSascha Wildner>0 use netbsd-core 107327e51cbSPeter Avalos 10882c5fa3eSPeter Avalos0 belong&0377777777 042400413 a.out NetBSD/SPARC demand paged 1096fca56fbSSascha Wildner>0 use \^netbsd-8192 1106fca56fbSSascha Wildner 11182c5fa3eSPeter Avalos0 belong&0377777777 042400410 a.out NetBSD/SPARC pure 1126fca56fbSSascha Wildner>0 use \^netbsd-pure 1136fca56fbSSascha Wildner 11482c5fa3eSPeter Avalos0 belong&0377777777 042400407 a.out NetBSD/SPARC 1156fca56fbSSascha Wildner>0 use \^netbsd-normal 1166fca56fbSSascha Wildner 11782c5fa3eSPeter Avalos0 belong&0377777777 042400507 a.out NetBSD/SPARC core 1186fca56fbSSascha Wildner>0 use \^netbsd-core 119327e51cbSPeter Avalos 120327e51cbSPeter Avalos0 belong&0377777777 042600413 a.out NetBSD/pmax demand paged 1216fca56fbSSascha Wildner>0 use netbsd-4096 1226fca56fbSSascha Wildner 123327e51cbSPeter Avalos0 belong&0377777777 042600410 a.out NetBSD/pmax pure 1246fca56fbSSascha Wildner>0 use \^netbsd-pure 1256fca56fbSSascha Wildner 126327e51cbSPeter Avalos0 belong&0377777777 042600407 a.out NetBSD/pmax 1276fca56fbSSascha Wildner>0 use netbsd-normal 1286fca56fbSSascha Wildner 129327e51cbSPeter Avalos0 belong&0377777777 042600507 a.out NetBSD/pmax core 1306fca56fbSSascha Wildner>0 use netbsd-core 131327e51cbSPeter Avalos 132327e51cbSPeter Avalos0 belong&0377777777 043000413 a.out NetBSD/vax 1k demand paged 1336fca56fbSSascha Wildner>0 use netbsd-4096 1346fca56fbSSascha Wildner 135327e51cbSPeter Avalos0 belong&0377777777 043000410 a.out NetBSD/vax 1k pure 1366fca56fbSSascha Wildner>0 use netbsd-pure 1376fca56fbSSascha Wildner 138327e51cbSPeter Avalos0 belong&0377777777 043000407 a.out NetBSD/vax 1k 1396fca56fbSSascha Wildner>0 use netbsd-normal 1406fca56fbSSascha Wildner 141327e51cbSPeter Avalos0 belong&0377777777 043000507 a.out NetBSD/vax 1k core 1426fca56fbSSascha Wildner>0 use netbsd-core 143327e51cbSPeter Avalos 144327e51cbSPeter Avalos0 belong&0377777777 045400413 a.out NetBSD/vax 4k demand paged 1456fca56fbSSascha Wildner>0 use netbsd-4096 1466fca56fbSSascha Wildner 147327e51cbSPeter Avalos0 belong&0377777777 045400410 a.out NetBSD/vax 4k pure 1486fca56fbSSascha Wildner>0 use netbsd-pure 1496fca56fbSSascha Wildner 150327e51cbSPeter Avalos0 belong&0377777777 045400407 a.out NetBSD/vax 4k 1516fca56fbSSascha Wildner>0 use netbsd-normal 1526fca56fbSSascha Wildner 153327e51cbSPeter Avalos0 belong&0377777777 045400507 a.out NetBSD/vax 4k core 1546fca56fbSSascha Wildner>0 use netbsd-core 155327e51cbSPeter Avalos 156327e51cbSPeter Avalos# NetBSD/alpha does not support (and has never supported) a.out objects, 157327e51cbSPeter Avalos# so no rules are provided for them. NetBSD/alpha ELF objects are 158327e51cbSPeter Avalos# dealt with in "elf". 159327e51cbSPeter Avalos0 lelong 0x00070185 ECOFF NetBSD/alpha binary 160327e51cbSPeter Avalos>10 leshort 0x0001 not stripped 161327e51cbSPeter Avalos>10 leshort 0x0000 stripped 162327e51cbSPeter Avalos0 belong&0377777777 043200507 a.out NetBSD/alpha core 163327e51cbSPeter Avalos>12 string >\0 from '%s' 164327e51cbSPeter Avalos>32 lelong !0 (signal %d) 165327e51cbSPeter Avalos 166327e51cbSPeter Avalos0 belong&0377777777 043400413 a.out NetBSD/mips demand paged 1676fca56fbSSascha Wildner>0 use \^netbsd-8192 1686fca56fbSSascha Wildner 169327e51cbSPeter Avalos>16 belong >0 not stripped 170327e51cbSPeter Avalos0 belong&0377777777 043400410 a.out NetBSD/mips pure 1716fca56fbSSascha Wildner>0 use netbsd-pure 1726fca56fbSSascha Wildner 173327e51cbSPeter Avalos0 belong&0377777777 043400407 a.out NetBSD/mips 1746fca56fbSSascha Wildner>0 use netbsd-normal 1756fca56fbSSascha Wildner 176327e51cbSPeter Avalos0 belong&0377777777 043400507 a.out NetBSD/mips core 1776fca56fbSSascha Wildner>0 use netbsd-core 178327e51cbSPeter Avalos 179327e51cbSPeter Avalos0 belong&0377777777 043600413 a.out NetBSD/arm32 demand paged 1806fca56fbSSascha Wildner>0 use netbsd-4096 1816fca56fbSSascha Wildner 182327e51cbSPeter Avalos0 belong&0377777777 043600410 a.out NetBSD/arm32 pure 1836fca56fbSSascha Wildner>0 use netbsd-pure 1846fca56fbSSascha Wildner 185327e51cbSPeter Avalos0 belong&0377777777 043600407 a.out NetBSD/arm32 1866fca56fbSSascha Wildner>0 use netbsd-normal 1876fca56fbSSascha Wildner 188327e51cbSPeter Avalos# NetBSD/arm26 has always used ELF objects, but it shares a core file 189327e51cbSPeter Avalos# format with NetBSD/arm32. 190327e51cbSPeter Avalos0 belong&0377777777 043600507 a.out NetBSD/arm core 1916fca56fbSSascha Wildner>0 use netbsd-core 1929f86ab30SPeter Avalos 1939f86ab30SPeter Avalos# Kernel core dump format 1949f86ab30SPeter Avalos0 belong&0x0000ffff 0x00008fca NetBSD kernel core file 1959f86ab30SPeter Avalos>0 belong&0x03ff0000 0x00000000 \b, Unknown 19682c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00010000 \b, sun 68010/68020 1979f86ab30SPeter Avalos>0 belong&0x03ff0000 0x00020000 \b, sun 68020 1989f86ab30SPeter Avalos>0 belong&0x03ff0000 0x00640000 \b, 386 PC 1999f86ab30SPeter Avalos>0 belong&0x03ff0000 0x00860000 \b, i386 BSD 2009f86ab30SPeter Avalos>0 belong&0x03ff0000 0x00870000 \b, m68k BSD (8K pages) 2019f86ab30SPeter Avalos>0 belong&0x03ff0000 0x00880000 \b, m68k BSD (4K pages) 2029f86ab30SPeter Avalos>0 belong&0x03ff0000 0x00890000 \b, ns32532 BSD 20382c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x008a0000 \b, SPARC/32 BSD 2049f86ab30SPeter Avalos>0 belong&0x03ff0000 0x008b0000 \b, pmax BSD 2059f86ab30SPeter Avalos>0 belong&0x03ff0000 0x008c0000 \b, vax BSD (1K pages) 2069f86ab30SPeter Avalos>0 belong&0x03ff0000 0x008d0000 \b, alpha BSD 2079f86ab30SPeter Avalos>0 belong&0x03ff0000 0x008e0000 \b, mips BSD (Big Endian) 2089f86ab30SPeter Avalos>0 belong&0x03ff0000 0x008f0000 \b, arm6 BSD 2099f86ab30SPeter Avalos>0 belong&0x03ff0000 0x00900000 \b, m68k BSD (2K pages) 2109f86ab30SPeter Avalos>0 belong&0x03ff0000 0x00910000 \b, sh3 BSD 21182c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00950000 \b, ppc BSD (Big Endian) 21282c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00960000 \b, vax BSD (4K pages) 21382c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00970000 \b, mips1 BSD 21482c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00980000 \b, mips2 BSD 21582c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00990000 \b, m88k BSD 21682c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00920000 \b, parisc BSD 21782c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x009b0000 \b, sh5/64 BSD 21882c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x009c0000 \b, SPARC/64 BSD 21982c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x009d0000 \b, amd64 BSD 22082c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x009e0000 \b, sh5/32 BSD 22182c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x009f0000 \b, ia64 BSD 22282c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00b70000 \b, aarch64 BSD 22382c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00b80000 \b, or1k BSD 22482c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00b90000 \b, Risk-V BSD 22582c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x00c80000 \b, hp200 BSD 22682c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x012c0000 \b, hp300 BSD 22782c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x020b0000 \b, hp800 HP-UX 22882c5fa3eSPeter Avalos>0 belong&0x03ff0000 0x020c0000 \b, hp200/hp300 HP-UX 2299f86ab30SPeter Avalos>0 belong&0xfc000000 0x04000000 \b, CPU 2309f86ab30SPeter Avalos>0 belong&0xfc000000 0x08000000 \b, DATA 2319f86ab30SPeter Avalos>0 belong&0xfc000000 0x10000000 \b, STACK 2329f86ab30SPeter Avalos>4 leshort x \b, (headersize = %d 2339f86ab30SPeter Avalos>6 leshort x \b, segmentsize = %d 2346fca56fbSSascha Wildner>8 lelong x \b, segments = %d) 235*c30bd091SSascha Wildner 236*c30bd091SSascha Wildner# little endian only for now. 237*c30bd091SSascha Wildner0 name ktrace 238*c30bd091SSascha Wildner>4 leshort 7 239*c30bd091SSascha Wildner>>6 leshort <3 NetBSD ktrace file version %d 240*c30bd091SSascha Wildner>>>12 string x from %s 241*c30bd091SSascha Wildner>>>56 string x \b, emulation %s 242*c30bd091SSascha Wildner>>>8 lelong <65536 \b, pid=%d 243*c30bd091SSascha Wildner 244*c30bd091SSascha Wildner56 string netbsd 245*c30bd091SSascha Wildner>0 use ktrace 246*c30bd091SSascha Wildner56 string linux 247*c30bd091SSascha Wildner>0 use ktrace 248*c30bd091SSascha Wildner56 string sunos 249*c30bd091SSascha Wildner>0 use ktrace 250*c30bd091SSascha Wildner56 string hpux 251*c30bd091SSascha Wildner>0 use ktrace 252