00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #if !defined(CasENV_H)
00024 #define CasENV_H
00025
00049 struct CasTMBlock
00050 {
00051 struct
00052 {
00053 unsigned char Buf[8];
00054 union
00055 {
00056 unsigned char Buf[8];
00057 struct
00058 {
00059 void *Ptr;
00060 union
00061 {
00062 void *Fill;
00063 mf_uns16 Len;
00064 mf_uns32 Pid;
00065 } Second;
00066 } Parts;
00067 } Long;
00068 } ReqId;
00069 struct
00070 {
00071 unsigned char Fill[4];
00072 mf_uns32 NsmLen;
00073 unsigned char Id[8];
00074
00075
00076
00077
00078 } Entry;
00079 struct
00080 {
00081 union
00082 {
00083 void *Ptr;
00084 mf_uns32 Len;
00085 } Resource;
00086 unsigned char Type;
00087 #define CasTM_INSTALL 1
00088 #define CasTM_DELETE 2
00089 #define CasTM_LOCATE 3
00090 #define CasTM_LOC_NXT 4
00091 #define CasTM_LOC_EXCL 5
00092 #define CasTM_ENQ_LUW 6
00093 #define CasTM_ENQ_TASK 7
00094 #define CasTM_ENQ_ALUW 8
00095 #define CasTM_ENQ_ATSK 9
00096 #define CasTM_DEQ_LUW 10
00097 #define CasTM_DEQ_TASK 11
00098 #define CasTM_DEQ_SPEC 12
00099 #define CasTM_SUSPEND 13
00100 #define CasTM_RECHAIN 14
00101 #define CasTM_REL_EXCL 15
00102 #define CasTM_SCHED 15
00103 #define CasTM_GET_ITR 16
00104 #define CasTM_ACK_ITR 17
00105 #define CasTM_CONT_ITR 18
00106 #define CasTM_INST_CVT 19
00107 #define CasTM_LX_NWAIT 20
00108 #define CasTM_SS_WIN 21
00109 #define CasTM_SS_LOSE 22
00110 #define CasTM_SS_INIT 23
00111 #define CasTM_INST_NM 24
00112 #define CasTM_DISC_NM 25
00113 #define CasTM_LOC_NM 26
00114 #define CasTM_LOC_N_NM 27
00115 #define CasTM_EXT_EN 28
00116 #define CasTM_EXT_ASC 29
00117 #define CasTM_EXT_DSC 30
00118 #define CasTM_BRI_DUP 31
00119 #define CasTM_BRI_USE 32
00120 #define CasTM_SVC_USE 33
00121 #define CasTM_SVC_REL 34
00122 #define CasTM_SRCH_F 35
00123 #define CasTM_SRCH_A 36
00124 #define CasTM_SRCH_N 37
00125 #define CasTM_STRT_I 38
00126 #define CasTM_LCK_SHR 39
00127 #define CasTM_LCK_EXL 40
00128 #define CasTM_STRT_P 41
00129 #define CasTM_ACCEPT 42
00130 #define CasTM_REPLY 43
00131 #define CasTM_DSN_INST 44
00132 #define CasTM_DSN_DISC 45
00133 #define CasTM_LP_SHR 46
00134 #define CasTM_LP_EXC 47
00135 #define CasTM_L_RETL 48
00136 #define CasTM_TIE_INST 49
00137 #define CasTM_TIE_DISC 50
00138 #define CasTM_LOC_FST 51
00139 #define CasTM_LOC_LNG 52
00140 #define CasTM_LLNG_FST 53
00141 #define CasTM_LLNG_NXT 54
00142 unsigned char Modifier;
00143 #define CasTM_ID_S 0
00144 #define CasTM_ID_L 1
00145 #define CasTM_CHAIN_2 2
00146 #define CasTM_CHAIN_3 3
00147 #define CasTM_CHAIN_4 4
00148 #define CasTM_SESS_S 5
00149 #define CasTM_SESS_R 6
00150 #define CasTM_DCT_DO 7
00151 #define CasTM_APKG_IDT 8
00152 #define CasTM_APKG_LOC 9
00153 #define CasTM_APKG_MOD 10
00154 unsigned char RetCode;
00155 #define CasTMR_NORMAL 0
00156 #define CasTMR_NFOUND 1
00157 #define CasTMR_BUSY 2
00158 #define CasTMR_INVREQ 3
00159 #define CasTMR_END 4
00160 #define CasTMR_GENMTCH 5
00161 #define CasTMR_DUP 6
00162 #define CasTMR_NSPACE 7
00163 #define CasTMR_NFCT 8
00164 #define CasTMR_TCTINV 9
00165 #define CasTMR_DUPNET 10
00166 #define CasTMR_NETINV 11
00167 #define CasTMR_DUPPLU 12
00168 #define CasTMR_PLUINV 13
00169 #define CasTMR_SDELIS 14
00170 #define CasTMR_SDELIA 15
00171 #define CasTMR_CONT 16
00172 #define CasTMR_INVACQ 17
00173 #define CasTMR_MIXENQ 18
00174 #define CasTMR_ITRWAIT 19
00175 #define CasTMR_OOS 20
00176 #define CasTMR_NOTACQ 21
00177 #define CasTMR_INVTYPE 22
00178 #define CasTMR_DUPBND 23
00179 #define CasTMR_BUSYBND 24
00180 #define CasTMR_DISABLD 25
00181 #define CasTMR_LOCK1 26
00182 #define CasTMR_LOCK2 27
00183 #define CasTMR_ 28
00184 #define CasTMR_CANCEL 29
00185 #define CasTMR_RETINV 30
00186 #define CasTMR_JCRERR 31
00187 #define CasTMR_JCRRERR 32
00188 #define CasTMR_STGERR 33
00189 #define CasTMR_INTERR 34
00190 #define CasTMR_SIZERR 35
00191 #define CasTMR_LENERR 36
00192 unsigned char Selector;
00193 #define CasTM_PPT 1
00194 #define CasTM_PCT 2
00195 #define CasTM_FCT 3
00196 #define CasTM_TST 4
00197 #define CasTM_DCT 5
00198 #define CasTM_TCT 6
00199 #define CasTM_ICT 7
00200 #define CasTM_AMT 8
00201 #define CasTM_ENQ 9
00202 #define CasTM_NETNAME 10
00203 #define CasTM_PLU 11
00204 #define CasTM_SESSION 12
00205 #define CasTM_TTYPE 13
00206 #define CasTM_ITR 14
00207 #define CasTM_JCT 15
00208 #define CasTM_UEX 16
00209 #define CasTM_XAT 17
00210 #define CasTM_AST 18
00211 #define CasTM_ARH 19
00212 #define CasTM_APKG 20
00213 #define CasTM_FREE 21
00214 #define CasTM_INIT 22
00215 #define CasTM_LOCK 23
00216 #define CasTM_ACCPT 24
00217 #define CasTM_TIE 25
00218 #define CasTM_ACEE 26
00219 #define CasTM_NSM 27
00220 void *Local;
00221 } Data;
00222 };
00223
00224
00225
00235 struct CasConMsg
00236 {
00237 mf_uns32 Version;
00238 #define CasCM_CURRENT 0
00239 mf_uns32 Type;
00240 #define CasCMT_INFO 0
00241 #define CasCMT_RH 1
00242 #define CasCMT_RTS 2
00243 #define CasCMT_JCL 3
00244 #define CasCMT_EXT 3
00245 #define CasCMT_DISP 4
00246 #define CasCMT_AUX 5
00247 mf_uns32 Number;
00248 mf_uns32 Size;
00249 mf_uns32 Severity;
00250 #define CasCMS_INFO 0
00251 #define CasCMS_WARN 4
00252 #define CasCMS_ERROR 8
00253 #define CasCMS_SEVERE 12
00254 #define CasCMS_UNREC 16
00255 mf_uns32 Work;
00256 mf_uns32 Reserved[2];
00257 void *Ptr;
00258 void *RetPtr;
00259 void *Reserved2[3];
00260 };
00261
00262
00272 struct CasLock
00273 {
00274 mf_uns32 Version;
00275 #define CasLK_CURRENT 0
00276 mf_uns32 Function;
00278 #define CasLK_ENQUEUE 0
00279 #define CasLK_DEQUEUE 1
00280 mf_uns32 Type;
00281 mf_uns32 Count;
00282 struct
00283 {
00284 char *RName;
00285 char QName[8];
00286 mf_uns32 RetCode;
00290 #define CasLK_ET_AVAIL 0
00291 #define CasLK_ET_CTRLD 4
00292 #define CasLK_ET_NAVAIL 8
00293 #define CasLK_ET_PREQ 12
00294 #define CasLK_EU_ACQ 0
00295 #define CasLK_EU_CTRLD 4
00296 #define CasLK_EU_QREQ 8
00297 #define CasLK_EU_PREQ 12
00298 #define CasLK_EC_OK 0
00299 #define CasLK_EC_NCTL 4
00300 #define CasLK_EC_DENY 8
00301 #define CasLK_EC_PREQ 12
00302 #define CasLK_EH_ACQ 0
00303 #define CasLK_EH_CTRLD 4
00304 #define CasLK_EH_NAVAIL 8
00305 #define CasLK_EH_PREQ 12
00306 #define CasLK_EW_NCTRL 0
00307 #define CasLK_EW_ERR 16
00308 #define CasLK_DH_RLSD 0
00309 #define CasLK_DH_PREQ 8
00310 #define CasLK_DH_NCTL 12
00311 #define CasLK_R_INV 20
00312 #define CasLK_R_ENV 24
00313 #define CasLK_R_ILL 28
00314 #define CasLK_R_SCOPE 32
00315
00317 mf_uns8 RNameLen;
00318 mf_uns8 Share;
00320 #define CasLK_SHARE 0
00321 #define CasLK_EXCL 1
00323 mf_uns8 Scope;
00324 #define CasLK_SERVER 1
00326 mf_uns8 Lifetime;
00330 #define CasLK_UOW 11
00331 #define CasLK_TASK 12
00332 #define CasLK_PROC 13
00334
00335 mf_uns8 Filler[16];
00336 } Lock[1];
00337 };
00338
00339
00340
00354 struct CasRdoRec
00355 {
00356 struct
00357 {
00358 char Group[8];
00359 mf_uns8 Type;
00360 #define RdoTYPE_NONE 0
00361 #define RdoTYPE_GROUP 1
00362 #define RdoTYPE_PCT 2
00363 #define RdoTYPE_FCT 3
00364 #define RdoTYPE_PPT 4
00365 #define RdoTYPE_DCT 5
00366 #define RdoTYPE_SIT 6
00367 #define RdoTYPE_SNT 7
00368 #define RdoTYPE_TST 8
00369 #define RdoTYPE_JCT 9
00370 #define RdoTYPE_TTYPE 10
00371 #define RdoTYPE_TERM 11
00372 #define RdoTYPE_PLT 12
00373 #define RdoTYPE_STARTUP 13
00374 #define RdoTYPE_XLT 14
00375 #define RdoTYPE_PRO 15
00376 #define RdoTYPE_RID 16
00377 #define RdoTYPE_AAINODE 17
00378 #define RdoTYPE_AAISVC 18
00379 #define RdoTYPE_FSRULE 19
00380 #define RdoTYPE_FSPROC 20
00381 #define RdoTYPE_CAT 21
00382 #define RdoTYPE_XAT 22
00383 #define RdoTYPE_BAT 23
00384 #define RdoTYPE_HIGH 255
00385 char Resource[8];
00386 } Header;
00387
00388 struct
00389 {
00390 char Description[60];
00391
00392 union
00393 {
00394
00395
00396
00397
00398
00399
00400
00401 struct
00402 {
00403 mf_uns16 Version;
00404 #define RdoSNT_VER 2
00405 mf_uns16 VersionRead;
00406 char Password[8];
00407 mf_uns8 TableFlag;
00408 char OperId[3];
00409 mf_uns8 OperClass[3];
00410 mf_uns8 OperKey[8];
00411 mf_uns8 ResourceKeys[3];
00412 mf_uns8 SecurityKeys[8];
00413 mf_uns16 Timeout;
00414 mf_uns8 Priority;
00415 mf_uns8 AccessFlags[14];
00416 #define RdoSNT_UPDATE 1
00417 #define RdoSNT_READ 2
00418 #define RdoSNT_NOACC 255
00419 mf_uns8 GroupPfxLen;
00420 char GroupPfx[8];
00421 mf_uns8 filler;
00422 mf_uns8 BatAccessFlag;
00423 mf_uns8 UserResKeys[3];
00424 mf_uns8 XatAccessFlag;
00425 mf_uns8 JclSubFlag;
00426 mf_uns8 ImsAccessFlag;
00427 } SNT;
00428
00429 struct
00430 {
00431 mf_uns8 Bytes[4096];
00432 } Raw;
00433 } Data;
00434
00435 mf_uns32 filler[4];
00436 } Desc;
00437 };
00438
00439
00448 struct CasRdoFInt
00449 {
00450 mf_uns8 Request;
00451 #define RdoREQ_OPEN 1
00452 #define RdoREQ_CLOSE 2
00453 #define RdoREQ_OPEN_RO 3
00454 #define RdoREQ_REOPEN 5
00455 #define RdoREQ_REOPEN_RO 6
00456 #define RdoREQ_FIND 10
00457 #define RdoREQ_RD_FRST 20
00458 #define RdoREQ_RD_NEXT 21
00459 #define RdoREQ_RD_PREV 22
00460 #define RdoREQ_RD_UPD 23
00461 #define RdoREQ_RD_DEL 24
00462 #define RdoREQ_RD_HDR 25
00463 #define RdoREQ_RD_UPDHDR 26
00464 #define RdoREQ_DELETE 30
00465 #define RdoREQ_WRITE 40
00466 #define RdoREQ_REWRITE 41
00467 #define RdoREQ_WRITEHDR 42
00468 #define RdoREQ_REWRITEHDR 43
00469 #define RdoREQ_WRITE_C 50
00470 #define RdoREQ_RD_NEXT_C 51
00471 #define RdoREQ_RD_PREV_C 52
00472 #define RdoREQ_RD_FRST_G 60
00473 #define RdoREQ_RD_NEXT_G 61
00474 #define RdoREQ_RD_PREV_G 62
00475 #define RdoREQ_UNLOCK 70
00476 #define RdoREQ_POS_SAV 90
00477 #define RdoREQ_POS_RST 91
00478 #define RdoREQ_POS_CLR 92
00479 #define RdoREQ_FILE_DEL 250
00480 #define RdoREQ_FILE_CRT 251
00481 mf_uns8 Result;
00482 #define RdoRES_GOOD 0
00483 #define RdoRES_ERROR 1
00484 #define RdoRES_NOTFOUND 2
00485 #define RdoRES_DUPREC 3
00486 #define RdoRES_LOCKED 4
00487 #define RdoRES_FNOTFOUND 5
00488 #define RdoRES_BADTYPE 6
00489 #define RdoRES_BADREQ 7
00490 #define RdoRES_MISMATCH 8
00491 #define RdoRES_CRTFAIL 9
00492 mf_uns8 VersionResult;
00493 #define RdoVER_GOOD 0
00494 #define RdoVER_BAD 1
00495 #define RdoVER_OLD 2
00496 #define RdoVER_NEW 3
00497 mf_uns8 IOStatus[2];
00498 struct
00499 {
00500 mf_uns8 filler;
00501 mf_uns8 Level;
00502 #define RdoBUILD_LEVEL 4
00503 } Build;
00504 mf_uns8 Trace;
00505 struct
00506 {
00507 mf_uns8 filler;
00508 mf_uns8 Id;
00509 #define RdoKEY_PRIMARY 0
00510 #define RdoKEY_GROUP 0
00511 #define RdoKEY_ALT 1
00512 #define RdoKEY_RESGROUP 1
00513 } KeyId;
00514 };
00515
00516
00517 #endif
00518
00519
00520