Merge branch 'vendor/FILE'
[dragonfly.git] / contrib / file / magic / Magdir / vms
1
2 #------------------------------------------------------------------------------
3 # $File: vms,v 1.7 2013/03/09 22:36:00 christos Exp $
4 # vms:  file(1) magic for VMS executables (experimental)
5 #
6 # VMS .exe formats, both VAX and AXP (Greg Roelofs, newt@uchicago.edu)
7
8 # GRR 950122:  I'm just guessing on these, based on inspection of the headers
9 # of three executables each for Alpha and VAX architectures.  The VAX files
10 # all had headers similar to this:
11 #
12 #   00000  b0 00 30 00 44 00 60 00  00 00 00 00 30 32 30 35  ..0.D.`.....0205
13 #   00010  01 01 00 00 ff ff ff ff  ff ff ff ff 00 00 00 00  ................
14 #
15 0       string  \xb0\0\x30\0    VMS VAX executable
16 >44032  string  PK\003\004      \b, Info-ZIP SFX archive v5.12 w/decryption
17 #
18 # The AXP files all looked like this, except that the byte at offset 0x22
19 # was 06 in some of them and 07 in others:
20 #
21 #   00000  03 00 00 00 00 00 00 00  ec 02 00 00 10 01 00 00  ................
22 #   00010  68 00 00 00 98 00 00 00  b8 00 00 00 00 00 00 00  h...............
23 #   00020  00 00 07 00 00 00 00 00  00 00 00 00 00 00 00 00  ................
24 #   00030  00 00 00 00 01 00 00 00  00 00 00 00 00 00 00 00  ................
25 #   00040  00 00 00 00 ff ff ff ff  ff ff ff ff 02 00 00 00  ................
26 #
27 # GRR this test is still too general as it catches example adressen.dbt
28 0       belong  0x03000000      
29 >8      ubelong 0xec020000      VMS Alpha executable
30 >>75264 string  PK\003\004      \b, Info-ZIP SFX archive v5.12 w/decryption