| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| #ifndef _VMS_LBR_H |
| #define _VMS_LBR_H |
| |
| |
| |
| |
| |
| #define LHD_SANEID_DCX 319232342 |
| #define LHD_SANEID3 233579905 |
| #define LHD_SANEID6 233579911 |
| |
| |
| #define LBR__C_TYP_UNK 0 |
| #define LBR__C_TYP_OBJ 1 |
| #define LBR__C_TYP_MLB 2 |
| #define LBR__C_TYP_HLP 3 |
| #define LBR__C_TYP_TXT 4 |
| #define LBR__C_TYP_SHSTB 5 |
| #define LBR__C_TYP_NCS 6 |
| #define LBR__C_TYP_EOBJ 7 |
| #define LBR__C_TYP_ESHSTB 8 |
| #define LBR__C_TYP_IOBJ 9 |
| #define LBR__C_TYP_ISHSTB 10 |
| |
| struct vms_lhd |
| { |
| |
| unsigned char type; |
| |
| |
| unsigned char nindex; |
| |
| unsigned char fill_1[2]; |
| |
| |
| unsigned char sanity[4]; |
| |
| |
| unsigned char majorid[2]; |
| unsigned char minorid[2]; |
| |
| |
| unsigned char lbrver[32]; |
| |
| |
| unsigned char credat[8]; |
| |
| |
| unsigned char updtim[8]; |
| |
| |
| unsigned char mhdusz; |
| |
| unsigned char idxblkf[2]; |
| unsigned char fill_2; |
| unsigned char closerror[2]; |
| |
| unsigned char spareword[2]; |
| |
| |
| unsigned char freevbn[4]; |
| unsigned char freeblk[4]; |
| |
| unsigned char nextrfa[6]; |
| unsigned char nextvbn[4]; |
| |
| |
| |
| unsigned char freidxblk[4]; |
| |
| |
| unsigned char freeidx[4]; |
| |
| |
| unsigned char hipreal[4]; |
| unsigned char hiprusd[4]; |
| |
| |
| unsigned char idxblks[4]; |
| |
| |
| unsigned char idxcnt[4]; |
| |
| |
| unsigned char modcnt[4]; |
| |
| unsigned char fill_3[2]; |
| |
| |
| unsigned char modhdrs[4]; |
| |
| |
| unsigned char idxovh[4]; |
| |
| |
| unsigned char maxluhrec[2]; |
| unsigned char numluhrec[2]; |
| unsigned char begluhrfa[6]; |
| unsigned char endluhrfa[6]; |
| |
| |
| unsigned char dcxmapvbn[4]; |
| |
| unsigned char fill_4[4 * 13]; |
| }; |
| |
| |
| #define LBR_MAJORID 3 |
| #define LBR_ELFMAJORID 6 |
| |
| |
| #define LHD_IDXDESC 196 |
| |
| |
| struct vms_idd |
| { |
| unsigned char flags[2]; |
| |
| |
| unsigned char keylen[2]; |
| |
| |
| unsigned char vbn[4]; |
| }; |
| |
| |
| #define IDD__FLAGS_ASCII 1 |
| #define IDD__FLAGS_LOCKED 2 |
| #define IDD__FLAGS_VARLENIDX 4 |
| #define IDD__FLAGS_NOCASECMP 8 |
| #define IDD__FLAGS_NOCASENTR 16 |
| #define IDD__FLAGS_UPCASNTRY 32 |
| |
| #define IDD_LENGTH 8 |
| |
| |
| #define INDEXDEF__LENGTH 512 |
| #define INDEXDEF__BLKSIZ 500 |
| |
| struct vms_indexdef |
| { |
| |
| unsigned char used[2]; |
| |
| |
| unsigned char parent[4]; |
| |
| unsigned char fill_1[6]; |
| |
| |
| |
| unsigned char keys[INDEXDEF__BLKSIZ]; |
| }; |
| |
| |
| |
| struct vms_rfa |
| { |
| |
| |
| unsigned char vbn[4]; |
| |
| |
| unsigned char offset[2]; |
| }; |
| |
| |
| |
| struct vms_idx |
| { |
| |
| |
| struct vms_rfa rfa; |
| |
| unsigned char keylen; |
| |
| unsigned char keyname[256]; |
| }; |
| |
| |
| |
| struct vms_elfidx |
| { |
| struct vms_rfa rfa; |
| |
| unsigned char keylen[2]; |
| unsigned char flags; |
| unsigned char keyname[256]; |
| }; |
| |
| |
| |
| #define ELFIDX__WEAK 0x01 |
| #define ELFIDX__GROUP 0x02 |
| #define ELFIDX__LISTRFA 0x04 |
| #define ELFIDX__SYMESC 0x08 |
| |
| #define RFADEF__C_INDEX 0xffff |
| |
| |
| |
| |
| struct vms_lhs |
| { |
| struct vms_rfa ng_g_rfa; |
| struct vms_rfa ng_wk_rfa; |
| struct vms_rfa g_g_rfa; |
| struct vms_rfa g_wk_rfa; |
| unsigned char flags; |
| }; |
| |
| |
| |
| struct vms_lns |
| { |
| |
| struct vms_rfa nxtrfa; |
| |
| |
| struct vms_rfa modrfa; |
| }; |
| |
| struct vms_datadef |
| { |
| |
| unsigned char recs; |
| unsigned char fill_1; |
| |
| |
| unsigned char link[4]; |
| |
| |
| |
| unsigned char data[506]; |
| }; |
| #define DATA__LENGTH 512 |
| #define DATA__DATA 6 |
| |
| |
| |
| struct vms_kbn |
| { |
| |
| unsigned char keylen[2]; |
| |
| |
| struct vms_rfa rfa; |
| |
| |
| }; |
| |
| |
| struct vms_mhd |
| { |
| |
| unsigned char lbrflag; |
| unsigned char id; |
| unsigned char fill_1[2]; |
| unsigned char refcnt[4]; |
| unsigned char datim[8]; |
| |
| unsigned char objstat; |
| |
| unsigned char objidlng; |
| unsigned char objid[31]; |
| |
| unsigned char pad1[3]; |
| unsigned char otherefcnt[4]; |
| unsigned char modsize[4]; |
| unsigned char pad2[4]; |
| }; |
| |
| #define MHD__C_MHDID 0xad |
| #define MHD__C_MHDLEN 16 |
| #define MHD__C_USRDAT 16 |
| |
| |
| #define MHD__M_SELSRC 0x1 |
| #define MHD__M_OBJTIR 0x2 |
| #define MHD__M_WKSYM 0x4 |
| |
| struct vms_luh |
| { |
| unsigned char nxtluhblk[4]; |
| unsigned char spare[2]; |
| unsigned char data[506]; |
| }; |
| |
| struct vms_luhdef |
| { |
| unsigned char rechdr[2]; |
| unsigned char reclen[2]; |
| }; |
| #define LUH__RECHDRLEN 4 |
| #define LUH__RECHDRMRK 0xabba |
| #define LUH__DATAFLDLEN 506 |
| |
| |
| |
| struct vms_leh |
| { |
| unsigned char date[8]; |
| unsigned char nbr_units[2]; |
| unsigned char action[2]; |
| unsigned char idlen; |
| |
| |
| }; |
| |
| #endif |