1b6cee71dSXin LI 2b6cee71dSXin LI#------------------------------------------------------------------------------ 3*48c779cdSXin LI# $File: netbsd,v 1.26 2019/01/01 03:11:23 christos Exp $ 4b6cee71dSXin LI# netbsd: file(1) magic for NetBSD objects 5b6cee71dSXin LI# 6b6cee71dSXin LI# All new-style magic numbers are in network byte order. 7b6cee71dSXin LI# The old-style magic numbers are indistinguishable from the same magic 8b6cee71dSXin LI# numbers used in other systems, and are handled, for all those systems, 9b6cee71dSXin LI# in aout. 10b6cee71dSXin LI# 11b6cee71dSXin LI 12*48c779cdSXin LI0 name netbsd-detail 13*48c779cdSXin LI>20 lelong x @%#x 14*48c779cdSXin LI>4 lelong >0 \b+T=%d 15*48c779cdSXin LI>8 lelong >0 \b+D=%d 16*48c779cdSXin LI>12 lelong >0 \b+B=%d 17*48c779cdSXin LI>16 lelong >0 \b+S=%d 18*48c779cdSXin LI>24 lelong >0 \b+TR=%d 19*48c779cdSXin LI>28 lelong >0 \b+TD=%d 20*48c779cdSXin LI 21*48c779cdSXin LI0 name netbsd-4096 22b6cee71dSXin LI>0 byte &0x80 23b6cee71dSXin LI>>20 lelong <4096 shared library 24b6cee71dSXin LI>>20 lelong =4096 dynamically linked executable 25b6cee71dSXin LI>>20 lelong >4096 dynamically linked executable 26b6cee71dSXin LI>0 byte ^0x80 executable 27b6cee71dSXin LI>16 lelong >0 not stripped 28*48c779cdSXin LI 29*48c779cdSXin LI0 name netbsd-8192 30*48c779cdSXin LI>0 byte &0x80 31*48c779cdSXin LI>>20 lelong <8192 shared library 32*48c779cdSXin LI>>20 lelong =8192 dynamically linked executable 33*48c779cdSXin LI>>20 lelong >8192 dynamically linked executable 34b6cee71dSXin LI>0 byte ^0x80 executable 35b6cee71dSXin LI>16 lelong >0 not stripped 36*48c779cdSXin LI>0 use netbsd-detail 37*48c779cdSXin LI 38*48c779cdSXin LI0 name netbsd-normal 39b6cee71dSXin LI>0 byte &0x80 dynamically linked executable 40b6cee71dSXin LI>0 byte ^0x80 41b6cee71dSXin LI>>0 byte &0x40 position independent 42b6cee71dSXin LI>>20 lelong !0 executable 43b6cee71dSXin LI>>20 lelong =0 object file 44b6cee71dSXin LI>16 lelong >0 not stripped 45*48c779cdSXin LI>0 use netbsd-detail 46*48c779cdSXin LI 47*48c779cdSXin LI0 name netbsd-pure 48*48c779cdSXin LI>0 byte &0x80 dynamically linked executable 49*48c779cdSXin LI>0 byte ^0x80 executable 50*48c779cdSXin LI>16 lelong >0 not stripped 51*48c779cdSXin LI>0 use netbsd-detail 52*48c779cdSXin LI 53*48c779cdSXin LI0 name netbsd-core 54b6cee71dSXin LI>12 string >\0 from '%s' 55b6cee71dSXin LI>32 lelong !0 (signal %d) 56b6cee71dSXin LI 57*48c779cdSXin LI0 belong&0377777777 041400413 a.out NetBSD/i386 demand paged 58*48c779cdSXin LI>0 use netbsd-4096 59*48c779cdSXin LI 60*48c779cdSXin LI0 belong&0377777777 041400410 a.out NetBSD/i386 pure 61*48c779cdSXin LI>0 use netbsd-pure 62*48c779cdSXin LI 63*48c779cdSXin LI0 belong&0377777777 041400407 a.out NetBSD/i386 64*48c779cdSXin LI>0 use netbsd-normal 65*48c779cdSXin LI 66*48c779cdSXin LI0 belong&0377777777 041400507 a.out NetBSD/i386 core 67*48c779cdSXin LI>0 use netbsd-core 68*48c779cdSXin LI 69b6cee71dSXin LI0 belong&0377777777 041600413 a.out NetBSD/m68k demand paged 70*48c779cdSXin LI>0 use \^netbsd-8192 71*48c779cdSXin LI 72b6cee71dSXin LI0 belong&0377777777 041600410 a.out NetBSD/m68k pure 73*48c779cdSXin LI>0 use \^netbsd-pure 74*48c779cdSXin LI 75b6cee71dSXin LI0 belong&0377777777 041600407 a.out NetBSD/m68k 76*48c779cdSXin LI>0 use \^netbsd-normal 77*48c779cdSXin LI 78b6cee71dSXin LI0 belong&0377777777 041600507 a.out NetBSD/m68k core 79*48c779cdSXin LI>0 use \^netbsd-core 80b6cee71dSXin LI 81b6cee71dSXin LI0 belong&0377777777 042000413 a.out NetBSD/m68k4k demand paged 82*48c779cdSXin LI>0 use \^netbsd-4096 83*48c779cdSXin LI 84b6cee71dSXin LI0 belong&0377777777 042000410 a.out NetBSD/m68k4k pure 85*48c779cdSXin LI>0 use \^netbsd-pure 86*48c779cdSXin LI 87b6cee71dSXin LI0 belong&0377777777 042000407 a.out NetBSD/m68k4k 88*48c779cdSXin LI>0 use \^netbsd-normal 89*48c779cdSXin LI 90b6cee71dSXin LI0 belong&0377777777 042000507 a.out NetBSD/m68k4k core 91*48c779cdSXin LI>0 use \^netbsd-core 92b6cee71dSXin LI 93b6cee71dSXin LI0 belong&0377777777 042200413 a.out NetBSD/ns32532 demand paged 94*48c779cdSXin LI>0 use netbsd-4096 95*48c779cdSXin LI 96b6cee71dSXin LI0 belong&0377777777 042200410 a.out NetBSD/ns32532 pure 97*48c779cdSXin LI>0 use netbsd-pure 98*48c779cdSXin LI 99b6cee71dSXin LI0 belong&0377777777 042200407 a.out NetBSD/ns32532 100*48c779cdSXin LI>0 use netbsd-normal 101*48c779cdSXin LI 102b6cee71dSXin LI0 belong&0377777777 042200507 a.out NetBSD/ns32532 core 103*48c779cdSXin LI>0 use netbsd-core 104b6cee71dSXin LI 105b6cee71dSXin LI0 belong&0377777777 045200507 a.out NetBSD/powerpc core 106*48c779cdSXin LI>0 use netbsd-core 107b6cee71dSXin LI 108b6cee71dSXin LI0 belong&0377777777 042400413 a.out NetBSD/SPARC demand paged 109*48c779cdSXin LI>0 use \^netbsd-8192 110*48c779cdSXin LI 111b6cee71dSXin LI0 belong&0377777777 042400410 a.out NetBSD/SPARC pure 112*48c779cdSXin LI>0 use \^netbsd-pure 113*48c779cdSXin LI 114b6cee71dSXin LI0 belong&0377777777 042400407 a.out NetBSD/SPARC 115*48c779cdSXin LI>0 use \^netbsd-normal 116*48c779cdSXin LI 117b6cee71dSXin LI0 belong&0377777777 042400507 a.out NetBSD/SPARC core 118*48c779cdSXin LI>0 use \^netbsd-core 119b6cee71dSXin LI 120b6cee71dSXin LI0 belong&0377777777 042600413 a.out NetBSD/pmax demand paged 121*48c779cdSXin LI>0 use netbsd-4096 122*48c779cdSXin LI 123b6cee71dSXin LI0 belong&0377777777 042600410 a.out NetBSD/pmax pure 124*48c779cdSXin LI>0 use \^netbsd-pure 125*48c779cdSXin LI 126b6cee71dSXin LI0 belong&0377777777 042600407 a.out NetBSD/pmax 127*48c779cdSXin LI>0 use netbsd-normal 128*48c779cdSXin LI 129b6cee71dSXin LI0 belong&0377777777 042600507 a.out NetBSD/pmax core 130*48c779cdSXin LI>0 use netbsd-core 131b6cee71dSXin LI 132b6cee71dSXin LI0 belong&0377777777 043000413 a.out NetBSD/vax 1k demand paged 133*48c779cdSXin LI>0 use netbsd-4096 134*48c779cdSXin LI 135b6cee71dSXin LI0 belong&0377777777 043000410 a.out NetBSD/vax 1k pure 136*48c779cdSXin LI>0 use netbsd-pure 137*48c779cdSXin LI 138b6cee71dSXin LI0 belong&0377777777 043000407 a.out NetBSD/vax 1k 139*48c779cdSXin LI>0 use netbsd-normal 140*48c779cdSXin LI 141b6cee71dSXin LI0 belong&0377777777 043000507 a.out NetBSD/vax 1k core 142*48c779cdSXin LI>0 use netbsd-core 143b6cee71dSXin LI 144b6cee71dSXin LI0 belong&0377777777 045400413 a.out NetBSD/vax 4k demand paged 145*48c779cdSXin LI>0 use netbsd-4096 146*48c779cdSXin LI 147b6cee71dSXin LI0 belong&0377777777 045400410 a.out NetBSD/vax 4k pure 148*48c779cdSXin LI>0 use netbsd-pure 149*48c779cdSXin LI 150b6cee71dSXin LI0 belong&0377777777 045400407 a.out NetBSD/vax 4k 151*48c779cdSXin LI>0 use netbsd-normal 152*48c779cdSXin LI 153b6cee71dSXin LI0 belong&0377777777 045400507 a.out NetBSD/vax 4k core 154*48c779cdSXin LI>0 use netbsd-core 155b6cee71dSXin LI 156b6cee71dSXin LI# NetBSD/alpha does not support (and has never supported) a.out objects, 157b6cee71dSXin LI# so no rules are provided for them. NetBSD/alpha ELF objects are 158b6cee71dSXin LI# dealt with in "elf". 159b6cee71dSXin LI0 lelong 0x00070185 ECOFF NetBSD/alpha binary 160b6cee71dSXin LI>10 leshort 0x0001 not stripped 161b6cee71dSXin LI>10 leshort 0x0000 stripped 162b6cee71dSXin LI0 belong&0377777777 043200507 a.out NetBSD/alpha core 163b6cee71dSXin LI>12 string >\0 from '%s' 164b6cee71dSXin LI>32 lelong !0 (signal %d) 165b6cee71dSXin LI 166b6cee71dSXin LI0 belong&0377777777 043400413 a.out NetBSD/mips demand paged 167*48c779cdSXin LI>0 use \^netbsd-8192 168*48c779cdSXin LI 169b6cee71dSXin LI>16 belong >0 not stripped 170b6cee71dSXin LI0 belong&0377777777 043400410 a.out NetBSD/mips pure 171*48c779cdSXin LI>0 use netbsd-pure 172*48c779cdSXin LI 173b6cee71dSXin LI0 belong&0377777777 043400407 a.out NetBSD/mips 174*48c779cdSXin LI>0 use netbsd-normal 175*48c779cdSXin LI 176b6cee71dSXin LI0 belong&0377777777 043400507 a.out NetBSD/mips core 177*48c779cdSXin LI>0 use netbsd-core 178b6cee71dSXin LI 179b6cee71dSXin LI0 belong&0377777777 043600413 a.out NetBSD/arm32 demand paged 180*48c779cdSXin LI>0 use netbsd-4096 181*48c779cdSXin LI 182b6cee71dSXin LI0 belong&0377777777 043600410 a.out NetBSD/arm32 pure 183*48c779cdSXin LI>0 use netbsd-pure 184*48c779cdSXin LI 185b6cee71dSXin LI0 belong&0377777777 043600407 a.out NetBSD/arm32 186*48c779cdSXin LI>0 use netbsd-normal 187*48c779cdSXin LI 188b6cee71dSXin LI# NetBSD/arm26 has always used ELF objects, but it shares a core file 189b6cee71dSXin LI# format with NetBSD/arm32. 190b6cee71dSXin LI0 belong&0377777777 043600507 a.out NetBSD/arm core 191*48c779cdSXin LI>0 use netbsd-core 192b6cee71dSXin LI 193b6cee71dSXin LI# Kernel core dump format 194b6cee71dSXin LI0 belong&0x0000ffff 0x00008fca NetBSD kernel core file 195b6cee71dSXin LI>0 belong&0x03ff0000 0x00000000 \b, Unknown 196c2931133SXin LI>0 belong&0x03ff0000 0x00010000 \b, sun 68010/68020 197b6cee71dSXin LI>0 belong&0x03ff0000 0x00020000 \b, sun 68020 198b6cee71dSXin LI>0 belong&0x03ff0000 0x00640000 \b, 386 PC 199b6cee71dSXin LI>0 belong&0x03ff0000 0x00860000 \b, i386 BSD 200b6cee71dSXin LI>0 belong&0x03ff0000 0x00870000 \b, m68k BSD (8K pages) 201b6cee71dSXin LI>0 belong&0x03ff0000 0x00880000 \b, m68k BSD (4K pages) 202b6cee71dSXin LI>0 belong&0x03ff0000 0x00890000 \b, ns32532 BSD 203b6cee71dSXin LI>0 belong&0x03ff0000 0x008a0000 \b, SPARC/32 BSD 204b6cee71dSXin LI>0 belong&0x03ff0000 0x008b0000 \b, pmax BSD 205b6cee71dSXin LI>0 belong&0x03ff0000 0x008c0000 \b, vax BSD (1K pages) 206b6cee71dSXin LI>0 belong&0x03ff0000 0x008d0000 \b, alpha BSD 207b6cee71dSXin LI>0 belong&0x03ff0000 0x008e0000 \b, mips BSD (Big Endian) 208b6cee71dSXin LI>0 belong&0x03ff0000 0x008f0000 \b, arm6 BSD 209b6cee71dSXin LI>0 belong&0x03ff0000 0x00900000 \b, m68k BSD (2K pages) 210b6cee71dSXin LI>0 belong&0x03ff0000 0x00910000 \b, sh3 BSD 211c2931133SXin LI>0 belong&0x03ff0000 0x00950000 \b, ppc BSD (Big Endian) 212c2931133SXin LI>0 belong&0x03ff0000 0x00960000 \b, vax BSD (4K pages) 213c2931133SXin LI>0 belong&0x03ff0000 0x00970000 \b, mips1 BSD 214c2931133SXin LI>0 belong&0x03ff0000 0x00980000 \b, mips2 BSD 215c2931133SXin LI>0 belong&0x03ff0000 0x00990000 \b, m88k BSD 216c2931133SXin LI>0 belong&0x03ff0000 0x00920000 \b, parisc BSD 217c2931133SXin LI>0 belong&0x03ff0000 0x009b0000 \b, sh5/64 BSD 218c2931133SXin LI>0 belong&0x03ff0000 0x009c0000 \b, SPARC/64 BSD 219c2931133SXin LI>0 belong&0x03ff0000 0x009d0000 \b, amd64 BSD 220c2931133SXin LI>0 belong&0x03ff0000 0x009e0000 \b, sh5/32 BSD 221c2931133SXin LI>0 belong&0x03ff0000 0x009f0000 \b, ia64 BSD 222c2931133SXin LI>0 belong&0x03ff0000 0x00b70000 \b, aarch64 BSD 223c2931133SXin LI>0 belong&0x03ff0000 0x00b80000 \b, or1k BSD 224c2931133SXin LI>0 belong&0x03ff0000 0x00b90000 \b, Risk-V BSD 225c2931133SXin LI>0 belong&0x03ff0000 0x00c80000 \b, hp200 BSD 226c2931133SXin LI>0 belong&0x03ff0000 0x012c0000 \b, hp300 BSD 227c2931133SXin LI>0 belong&0x03ff0000 0x020b0000 \b, hp800 HP-UX 228c2931133SXin LI>0 belong&0x03ff0000 0x020c0000 \b, hp200/hp300 HP-UX 229b6cee71dSXin LI>0 belong&0xfc000000 0x04000000 \b, CPU 230b6cee71dSXin LI>0 belong&0xfc000000 0x08000000 \b, DATA 231b6cee71dSXin LI>0 belong&0xfc000000 0x10000000 \b, STACK 232b6cee71dSXin LI>4 leshort x \b, (headersize = %d 233b6cee71dSXin LI>6 leshort x \b, segmentsize = %d 23458a0f0d0SEitan Adler>8 lelong x \b, segments = %d) 2353e41d09dSXin LI 2363e41d09dSXin LI# little endian only for now. 2373e41d09dSXin LI0 name ktrace 2383e41d09dSXin LI>4 leshort 7 2393e41d09dSXin LI>>6 leshort <3 NetBSD ktrace file version %d 2403e41d09dSXin LI>>>12 string x from %s 2413e41d09dSXin LI>>>56 string x \b, emulation %s 2423e41d09dSXin LI>>>8 lelong <65536 \b, pid=%d 2433e41d09dSXin LI 2443e41d09dSXin LI56 string netbsd 2453e41d09dSXin LI>0 use ktrace 2463e41d09dSXin LI56 string linux 2473e41d09dSXin LI>0 use ktrace 2483e41d09dSXin LI56 string sunos 2493e41d09dSXin LI>0 use ktrace 2503e41d09dSXin LI56 string hpux 2513e41d09dSXin LI>0 use ktrace 252