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