123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383 |
- #ifndef __vms_h
- #define __vms_h 1
- #ifndef __DESCRIP_LOADED
- #include <descrip.h>
- #endif
- #ifndef __STARLET_LOADED
- #define sys$assign SYS$ASSIGN
- #define sys$bintim SYS$BINTIM
- #define sys$close SYS$CLOSE
- #define sys$connect SYS$CONNECT
- #define sys$create SYS$CREATE
- #define sys$dassgn SYS$DASSGN
- #define sys$extend SYS$EXTEND
- #define sys$getjpiw SYS$GETJPIW
- #define sys$numtim SYS$NUMTIM
- #define sys$open SYS$OPEN
- #define sys$parse SYS$PARSE
- #define sys$put SYS$PUT
- #define sys$qio SYS$QIO
- #define sys$qiow SYS$QIOW
- #define sys$read SYS$READ
- #define sys$rewind SYS$REWIND
- #define sys$search SYS$SEARCH
- #define sys$setdfprot SYS$SETDFPROT
- #define sys$synch SYS$SYNCH
- #define sys$wait SYS$WAIT
- #define sys$write SYS$WRITE
- #include <starlet.h>
- #endif
- #ifndef __SYIDEF_LOADED
- #include <syidef.h>
- #endif
- #ifndef __ATRDEF_LOADED
- #include <atrdef.h>
- #endif
- #ifndef __FIBDEF_LOADED
- #include <fibdef.h>
- #endif
- #ifndef __IODEF_LOADED
- #include <iodef.h>
- #endif
- #if !defined(_RMS_H) && !defined(__RMS_LOADED)
- #include <rms.h>
- #endif
- #define ERR(s) !((s) & 1)
- #ifndef SYI$_VERSION
- #define SYI$_VERSION 4096
- #endif
- #define variant_union 1
- #if defined(fib$w_did) || (defined(__union) && (__union == variant_union))
- # define FIB$W_DID fib$w_did
- # define FIB$W_FID fib$w_fid
- # define FIB$L_ACCTL fib$l_acctl
- # define FIB$W_EXCTL fib$w_exctl
- # define FIB$W_NMCTL fib$w_nmctl
- #else
- # define FIB$W_DID fib$r_did_overlay.fib$w_did
- # define FIB$W_FID fib$r_fid_overlay.fib$w_fid
- # define FIB$L_ACCTL fib$r_acctl_overlay.fib$l_acctl
- # define FIB$W_EXCTL fib$r_exctl_overlay.fib$w_exctl
- # define FIB$W_NMCTL fib$r_nmctl_overlay.fib$w_nmctl
- #endif
- #undef variant_union
- #ifdef NAML$C_MAXRSS
- # ifndef NAM_MAXRSS
- # define NAM_MAXRSS NAML$C_MAXRSS
- # endif
- # define NAM_STRUCT NAML
- # define FAB_OR_NAML(fab, nam) (nam)
- # define FAB_OR_NAML_DNA naml$l_long_defname
- # define FAB_OR_NAML_DNS naml$l_long_defname_size
- # define FAB_OR_NAML_FNA naml$l_long_filename
- # define FAB_OR_NAML_FNS naml$l_long_filename_size
- # define CC_RMS_NAM cc$rms_naml
- # define FAB_NAM fab$l_naml
- # define NAM_ESA naml$l_long_expand
- # define NAM_ESL naml$l_long_expand_size
- # define NAM_ESS naml$l_long_expand_alloc
- # define NAM_RSA naml$l_long_result
- # define NAM_RSL naml$l_long_result_size
- # define NAM_RSS naml$l_long_result_alloc
- # define NAM_DID naml$w_did
- # define NAM_DVI naml$t_dvi
- # define NAM_FID naml$w_fid
- # define NAM_FNB naml$l_fnb
- # define NAM_NOP naml$b_nop
- # define NAM_M_SYNCHK NAML$M_SYNCHK
- # define NAM_B_DEV naml$l_long_dev_size
- # define NAM_L_DEV naml$l_long_dev
- # define NAM_B_DIR naml$l_long_dir_size
- # define NAM_L_DIR naml$l_long_dir
- # define NAM_B_NAME naml$l_long_name_size
- # define NAM_L_NAME naml$l_long_name
- # define NAM_B_TYPE naml$l_long_type_size
- # define NAM_L_TYPE naml$l_long_type
- # define NAM_B_VER naml$l_long_ver_size
- # define NAM_L_VER naml$l_long_ver
- #else
- # ifndef NAM_MAXRSS
- # define NAM_MAXRSS NAM$C_MAXRSS
- # endif
- # define NAM_STRUCT NAM
- # define FAB_OR_NAML(fab, nam) (fab)
- # define FAB_OR_NAML_DNA fab$l_dna
- # define FAB_OR_NAML_DNS fab$b_dns
- # define FAB_OR_NAML_FNA fab$l_fna
- # define FAB_OR_NAML_FNS fab$b_fns
- # define CC_RMS_NAM cc$rms_nam
- # define FAB_NAM fab$l_nam
- # define NAM_ESA nam$l_esa
- # define NAM_ESL nam$b_esl
- # define NAM_ESS nam$b_ess
- # define NAM_RSA nam$l_rsa
- # define NAM_RSL nam$b_rsl
- # define NAM_RSS nam$b_rss
- # define NAM_DID nam$w_did
- # define NAM_DVI nam$t_dvi
- # define NAM_FID nam$w_fid
- # define NAM_FNB nam$l_fnb
- # define NAM_NOP nam$b_nop
- # define NAM_M_SYNCHK NAM$M_SYNCHK
- # define NAM_B_DEV nam$b_dev
- # define NAM_L_DEV nam$l_dev
- # define NAM_B_DIR nam$b_dir
- # define NAM_L_DIR nam$l_dir
- # define NAM_B_NAME nam$b_name
- # define NAM_L_NAME nam$l_name
- # define NAM_B_TYPE nam$b_type
- # define NAM_L_TYPE nam$l_type
- # define NAM_B_VER nam$b_ver
- # define NAM_L_VER nam$l_ver
- #endif
- struct EB_header
- { ush tag;
- ush size;
- uch data[1];
- };
- #ifndef EB_HEADSIZE
- # define EB_HEADSIZE 4
- #endif
- #if (!defined(VAXC) && !defined(_RMS_H) && !defined(__RMS_LOADED))
- struct XAB {
- unsigned char xab$b_cod;
- unsigned char xab$b_bln;
- short int xabdef$$_fill_1;
- char *xab$l_nxt;
- };
- #endif
- #ifndef EB_IZVMS_BCMASK
- # define EB_IZVMS_BCMASK 07
- #endif
- #ifndef EB_IZVMS_BCSTOR
- # define EB_IZVMS_BCSTOR 0
- #endif
- #ifndef EB_IZVMS_BC00
- # define EB_IZVMS_BC00 1
- #endif
- #ifndef EB_IZVMS_BCDEFL
- # define EB_IZVMS_BCDEFL 2
- #endif
- struct IZ_block
- {
- ush sig;
- ush size;
- ulg bid;
- ush flags;
- ush length;
- ulg reserved;
- uch body[1];
- };
- #define IZ_SIGNATURE "IM"
- #define FABSIG "VFAB"
- #define XALLSIG "VALL"
- #define XFHCSIG "VFHC"
- #define XDATSIG "VDAT"
- #define XRDTSIG "VRDT"
- #define XPROSIG "VPRO"
- #define XKEYSIG "VKEY"
- #define XNAMSIG "VNAM"
- #define VERSIG "VMSV"
- #define FABL (cc$rms_fab.fab$b_bln)
- #define RABL (cc$rms_rab.rab$b_bln)
- #define XALLL (cc$rms_xaball.xab$b_bln)
- #define XDATL (cc$rms_xabdat.xab$b_bln)
- #define XFHCL (cc$rms_xabfhc.xab$b_bln)
- #define XKEYL (cc$rms_xabkey.xab$b_bln)
- #define XPROL (cc$rms_xabpro.xab$b_bln)
- #define XRDTL (cc$rms_xabrdt.xab$b_bln)
- #define XSUML (cc$rms_xabsum.xab$b_bln)
- #define EXTBSL 4
- #define RESL 8
- #define EXTHL (EB_HEADSIZE+EXTBSL+RESL)
- typedef unsigned char byte;
- struct iosb
- {
- ush status;
- ush count;
- ulg spec;
- };
- #ifdef VMS_ZIP
- #if defined(__DECC) || defined(__DECCXX)
- #pragma __nostandard
- #endif
- #if defined(__DECC) || defined(__DECCXX)
- #pragma __member_alignment __save
- #pragma __nomember_alignment
- #endif
- #ifdef VMS_ORIGINAL_PK_LAYOUT
- typedef struct PK_info
- {
- ush tag_ra; ush len_ra; byte ra[ATR$S_RECATTR];
- ush tag_uc; ush len_uc; byte uc[ATR$S_UCHAR];
- ush tag_jr; ush len_jr; byte jr[ATR$S_JOURNAL];
- ush tag_cd; ush len_cd; byte cd[ATR$S_CREDATE];
- ush tag_rd; ush len_rd; byte rd[ATR$S_REVDATE];
- ush tag_ed; ush len_ed; byte ed[ATR$S_EXPDATE];
- ush tag_bd; ush len_bd; byte bd[ATR$S_BAKDATE];
- ush tag_rn; ush len_rn; ush rn;
- ush tag_ui; ush len_ui; byte ui[ATR$S_UIC];
- ush tag_fp; ush len_fp; byte fp[ATR$S_FPRO];
- ush tag_rp; ush len_rp; byte rp[ATR$S_RPRO];
- } PK_info_t;
- #else
- typedef struct PK_info
- {
- ush tag_ra; ush len_ra; byte ra[ATR$S_RECATTR];
- ush tag_uc; ush len_uc; byte uc[ATR$S_UCHAR];
- ush tag_cd; ush len_cd; byte cd[ATR$S_CREDATE];
- ush tag_rd; ush len_rd; byte rd[ATR$S_REVDATE];
- ush tag_ed; ush len_ed; byte ed[ATR$S_EXPDATE];
- ush tag_bd; ush len_bd; byte bd[ATR$S_BAKDATE];
- ush tag_rn; ush len_rn; ush rn;
- ush tag_ui; ush len_ui; byte ui[ATR$S_UIC];
- ush tag_fp; ush len_fp; byte fp[ATR$S_FPRO];
- ush tag_rp; ush len_rp; byte rp[ATR$S_RPRO];
- ush tag_jr; ush len_jr; byte jr[ATR$S_JOURNAL];
- } PK_info_t;
- #endif
- #if defined(__DECC) || defined(__DECCXX)
- #pragma __member_alignment __restore
- #endif
- #if defined(__DECC) || defined(__DECCXX)
- #pragma __standard
- #endif
- #endif
- #define PK_SIGNATURE 0x000C
- #define VMS_ATTR_COUNT 11
- #define VMS_MAX_ATRCNT 20
- struct PK_field
- {
- ush tag;
- ush size;
- byte value[1];
- };
- #define PK_FLDHDR_SIZE 4
- struct PK_header
- {
- ush tag;
- ush size;
- ulg crc32;
- byte data[1];
- };
- #define PK_HEADER_SIZE 8
- #endif
|