00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef SAFAPI_H
00023 #define SAFAPI_H
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131
00132
00133
00134
00135
00136
00137
00138
00139
00140
00141
00142
00143
00144
00145
00146
00147
00148
00149
00150
00151
00152
00153
00154
00155
00156
00157
00158
00159
00160
00161
00162
00163
00170
00171
00172
00173
00174 #if !defined DOXYGEN
00175 struct safpb_parameter_block;
00176 int SAFROUTE(struct safpb_parameter_block *);
00177 #endif
00178
00179
00180
00181
00182
00183
00184
00185
00186
00187
00188
00189
00190
00192 typedef struct SafAdminArgTbl
00193 {
00194 char *KeyPtr;
00195 char *ValPtr;
00196 mf_uns32 KeyLen;
00197 mf_uns32 ValLen;
00198 mf_uns32 EsmRet;
00199
00200 } SafAdminArgTbl;
00201
00203 #define safadmin_argtbl SafAdminArgTbl
00204
00205 #define Safadmin_Argtbl SafAdminArgTbl
00206
00212 #define safadmin_argkeyptr KeyPtr
00213 #define safadmin_argvalptr ValPtr
00214 #define safadmin_argkeylen KeyLen
00215 #define safadmin_argvallen ValLen
00216 #define safadmin_argesmword EsmRet
00218
00219
00221 struct SafAdminListItem
00222 {
00223 mf_uns16 Count;
00224 mf_uns16 unused;
00225
00226 char **Key;
00227 char **Value;
00228 };
00229
00231 struct SafAdminList
00232 {
00233 mf_uns16 Count;
00234 mf_uns8 EsmIdx;
00235 mf_uns8 unused;
00236
00238 struct SafAdminListItem *Item;
00239 };
00240
00241
00242
00243
00244
00245
00252 struct safpb_verify
00253 {
00254 mf_uns16 safpb_verify_USERID_len;
00255 mf_uns16 safpb_verify_PWRD_len;
00256 mf_uns16 safpb_verify_NEWPWRD_len;
00257 mf_uns16 safpb_verify_TOKEN_len;
00258 char safpb_verify_group[8];
00259 void *safpb_verify_ACEE_ptr;
00260 char *safpb_verify_USERID_ptr;
00261 char *safpb_verify_PWRD_ptr;
00262 char *safpb_verify_NEWPWRD_ptr;
00263 void *safpb_verify_TOKEN_ptr;
00264 };
00265
00266
00273 struct safpb_auth
00274 {
00275 mf_uns16 safpb_auth_ENTITY_len;
00276 mf_uns16 safpb_auth_FACILITY_len;
00277 mf_uns16 safpb_auth_TRANSACTION_len;
00278 mf_uns16 safpb_auth_name_04_len;
00279 char safpb_auth_class[8];
00280 void *safpb_auth_ACEE_ptr;
00281 char *safpb_auth_ENTITY_ptr;
00282 char *safpb_auth_FACILITY_ptr;
00283 char *safpb_auth_TRANSACTION_ptr;
00284 char *safpb_auth_name_04_ptr;
00285 };
00286
00287
00294 struct safpb_xauth
00295 {
00296 mf_uns16 safpb_xauth_ENTITY_len;
00297 mf_uns16 safpb_xauth_STRING1_len;
00298 mf_uns16 safpb_xauth_STRING2_len;
00299 mf_uns16 safpb_xauth_CLASS_len;
00300 mf_uns32 safpb_xauth_PERMISSIONS;
00302 mf_uns32 safpb_xauth_available;
00303 void *safpb_xauth_ACEE_ptr;
00304 char *safpb_xauth_ENTITY_ptr;
00305 char *safpb_xauth_STRING1_ptr;
00306 char *safpb_xauth_STRING2_ptr;
00307 char *safpb_xauth_CLASS_ptr;
00308 };
00309
00310
00317 struct safpb_audit
00318 {
00319 mf_uns16 safpb_audit_ENTITY_len;
00320 mf_uns16 safpb_audit_LOGSTR_len;
00321 mf_uns16 safpb_audit_name_03__len;
00322 mf_uns16 safpb_audit_name_04_len;
00323 char safpb_audit_avail_char[8];
00324 void *safpb_audit_ACEE_ptr;
00325 char *safpb_audit_ENTITY_ptr;
00326 char *safpb_audit_LOGSTR_ptr;
00327 char *safpb_audit_name_03_ptr;
00328 char *safpb_audit_name_04_ptr;
00329 };
00330
00331
00338 struct safpb_stat
00339 {
00340 mf_uns16 safpb_stat_QUERY_NAME_len;
00341 mf_uns16 safpb_stat_NEXT_len;
00342 mf_uns16 safpb_stat_RETURN_AREA_len;
00343 mf_uns16 safpb_stat_name_04_len;
00344 char safpb_stat_avail_char[8];
00345 void *safpb_stat_avail_ptr;
00346 char *safpb_stat_QUERY_NAME_ptr;
00347 char *safpb_stat_NEXT_ptr;
00348 char *safpb_stat_RETURN_AREA_ptr;
00349 char *safpb_stat_name_04_ptr;
00350 };
00351
00352
00359 struct safpb_admin
00360 {
00362 mf_uns16 safpb_admin_ARGSTR_len;
00363
00364 mf_uns16 safpb_admin_ARGTBL_count;
00365 mf_uns16 safpb_admin_LIST_count;
00366 mf_uns16 safpb_admin_name_04_len;
00367 char safpb_admin_avail_char[8];
00368 void *safpb_admin_ACEE_ptr;
00371 char *safpb_admin_ARGSTR_ptr;
00372
00374 struct SafAdminArgTbl
00375 *safpb_admin_ARGTBL_ptr;
00376
00378 struct SafAdminList
00379 *safpb_admin_LIST_ptr;
00380
00381 char *safpb_admin_name_04_ptr;
00382 };
00383
00384
00391 struct safpb_update
00392 {
00393 mf_uns16 safpb_update_ENTITY_len;
00394 mf_uns16 safpb_update_ACTION;
00395 mf_uns16 safpb_update_name_03_len;
00396 mf_uns16 safpb_update_name_04_len;
00397 char safpb_update_avail_char[8];
00398 void *safpb_update_ACEE_ptr;
00399 char *safpb_update_ENTITY_ptr;
00400 char *safpb_update_unused_ptr;
00401 char *safpb_update_name_03_ptr;
00402 char *safpb_update_name_04_ptr;
00403 };
00404
00405
00506 typedef struct safpb_parameter_block
00507 {
00508 mf_uns32 safpb_version;
00510 mf_uns8 safpb_request;
00511 mf_uns8 safpb_type;
00512 mf_uns8 safpb_modifier;
00513 mf_uns8 safpb_flag;
00514 mf_uns16 safpb_codeset;
00516 mf_uns8 safpb_availchar1;
00517 mf_uns8 safpb_availchar2;
00519
00520 union
00521 {
00522 mf_uns8 safpb_api_rc_aggregate[3];
00523 struct safpb_Api_Rc_Aggregate
00524 {
00525 mf_uns8 safpb_api_rc;
00526 mf_uns8 safpb_mgr_return;
00527 mf_uns8 safpb_mgr_reason;
00528 } DISCRETE;
00529 } RETCODES;
00531 mf_uns8 safpb_safesm_index;
00533 union
00534 {
00535 struct safpb_verify VERIFY;
00536 struct safpb_auth AUTH;
00537 struct safpb_xauth XAUTH;
00538 struct safpb_audit AUDIT;
00539 struct safpb_stat STAT;
00540 struct safpb_admin ADMIN;
00541 struct safpb_update UPDATE;
00542 } REQUESTS;
00544 } Safpb_Parameter_Block;
00545
00546
00547
00548
00549
00550
00551
00552
00553
00554
00555
00556
00557 #define saf78_VERSION_1 1
00559
00560
00561
00564 #define saf78_REQUEST_VERIFY 1
00565 #define saf78_REQUEST_AUTH 2
00566 #define saf78_REQUEST_AUDIT 3
00567 #define saf78_REQUEST_STAT 4
00568 #define saf78_REQUEST_XAUTH 5
00569 #define saf78_REQUEST_ADMIN 6
00570 #define saf78_REQUEST_UPDATE 7
00572
00573
00575
00576
00577
00578
00579 #define saf78_TYPE_ENVIR_CREATE 1
00580 #define saf78_TYPE_ENVIR_DESTROY 2
00581 #define saf78_TYPE_TOKEN_CREATE 3
00582 #define saf78_TYPE_TOKEN_DELETE 4
00583 #define saf78_TYPE_USER_CHECK 5
00585
00586
00587
00588 #define saf78_TYPE_ATTR_NONE 0
00589 #define saf78_TYPE_ATTR_STATUS_ACC 1
00590 #define saf78_TYPE_ATTR_READ 2
00591 #define saf78_TYPE_ATTR_UPDATE 4
00592 #define saf78_TYPE_ATTR_CONTROL 8
00593 #define saf78_TYPE_ATTR_EXECUTE 16
00594 #define saf78_TYPE_ATTR_ALTER 128
00596
00597
00598
00599 #define saf78_TYPE_RESULT_SUCCESS 1
00600 #define saf78_TYPE_RESULT_FAILURE 2
00602
00603
00604
00605 #define saf78_TYPE_QUERY_ESM 1
00606 #define saf78_TYPE_QUERY_CLASS 2
00608
00609
00610
00611
00614 #define saf78_TYPE_ADMIN_ADDUSER 1
00615 #define saf78_TYPE_ADMIN_ADDGROUP 2
00616 #define saf78_TYPE_ADMIN_ADDCLASS 13
00617 #define saf78_TYPE_ADMIN_ADDRES 3
00618 #define saf78_TYPE_ADMIN_ALTUSER 4
00619 #define saf78_TYPE_ADMIN_ALTGROUP 5
00620 #define saf78_TYPE_ADMIN_ALTCLASS 14
00621 #define saf78_TYPE_ADMIN_ALTRES 6
00622 #define saf78_TYPE_ADMIN_DELUSER 7
00623 #define saf78_TYPE_ADMIN_DELGROUP 8
00624 #define saf78_TYPE_ADMIN_DELCLASS 20
00625 #define saf78_TYPE_ADMIN_DELRES 9
00626 #define saf78_TYPE_ADMIN_LISTUSER 10
00627 #define saf78_TYPE_ADMIN_LISTGROUP 11
00628 #define saf78_TYPE_ADMIN_LISTCLASS 19
00629 #define saf78_TYPE_ADMIN_LISTRES 12
00630 #define saf78_TYPE_ADMIN_SETPSWD 15
00631 #define saf78_TYPE_ADMIN_PERMIT 16
00632 #define saf78_TYPE_ADMIN_SETOPTS 17
00633 #define saf78_TYPE_ADMIN_FREELIST 18
00635
00636
00637
00638
00641 #define saf78_TYPE_UPDATE_USER 1
00642 #define saf78_TYPE_UPDATE_GROUP 2
00643 #define saf78_TYPE_UPDATE_RESOURCE 3
00644 #define saf78_TYPE_UPDATE_USERS 4
00645 #define saf78_TYPE_UPDATE_GROUPS 5
00646 #define saf78_TYPE_UPDATE_RESOURCES 6
00647 #define saf78_TYPE_UPDATE_ALL 0
00649
00650
00651
00652
00655 #define saf78_MODIFIER_NONE 0
00656 #define saf78_MODIFIER_CICS 1
00657 #define saf78_MODIFIER_IMS 2
00658 #define saf78_MODIFIER_JCL 3
00659 #define saf78_MODIFIER_ESMAC 4
00660 #define saf78_MODIFIER_WEB 5
00661 #define saf78_MODIFIER_BINP 6
00662 #define saf78_MODIFIER_CGI 7
00663 #define saf78_MODIFIER_MFDS 8
00665
00666
00667
00668
00671 #define saf78_FLAG_PW_ENCRYPT 1
00672 #define saf78_FROM_CACHE 1
00673 #define saf78_VER_NO_PASSWORD 2
00674 #define saf78_VER_PT_TICKET 4
00675 #define saf78_VER_PASSTOKEN 8
00676 #define saf78_VER_PT_SURROGATE 16
00677 #define saf78_VER_PASS_CHANGED 32
00678 #define saf78_FLAG_TRACE 64
00679 #define saf78_FLAG_API_DISPLAY 128
00680 #define saf78_REQUEST_FLAGS 0xDE
00682
00683
00684
00685
00688 #define saf78_CODESET_UTF8 0
00690
00691
00692
00693
00694
00697 #define saf78_CLASS_DATASET "DATASET "
00698
00699 #define saf78_CLASS_ALCSAUTH "ALCSAUTH"
00700 #define saf78_CLASS_APPCLU "APPCLU "
00701 #define saf78_CLASS_APPCPORT "APPCPORT"
00702 #define saf78_CLASS_APPCSERV "APPCSERV"
00703 #define saf78_CLASS_APPCSI "APPCSI "
00704 #define saf78_CLASS_APPCTP "APPCTP "
00705 #define saf78_CLASS_APPL "APPL "
00706 #define saf78_CLASS_CACHECLS "CACHECLS"
00707 #define saf78_CLASS_CBIND "CBIND "
00708 #define saf78_CLASS_CDT "CDT "
00709 #define saf78_CLASS_CONSOLE "CONSOLE "
00710 #define saf78_CLASS_CSFKEYS "CSFKEYS "
00711 #define saf78_CLASS_CSFSERV "CSFSERV "
00712 #define saf78_CLASS_DASDVOL "DASDVOL "
00713 #define saf78_CLASS_DBNFORM "DBNFORM "
00714 #define saf78_CLASS_DEVICES "DEVICES "
00715 #define saf78_CLASS_DIGTCERT "DIGTCERT"
00716 #define saf78_CLASS_DIGTCRIT "DIGTCRIT"
00717 #define saf78_CLASS_DIGTNMAP "DIGTNMAP"
00718 #define saf78_CLASS_DIGTRING "DIGTRING"
00719 #define saf78_CLASS_DIRAUTH "DIRAUTH "
00720 #define saf78_CLASS_DLFCLASS "DLFCLASS"
00721 #define saf78_CLASS_FACILITY "FACILITY"
00722 #define saf78_CLASS_FIELD "FIELD "
00723 #define saf78_CLASS_GCSFKEYS "GCSFKEYS"
00724 #define saf78_CLASS_GDASDVOL "GDASDVOL"
00725 #define saf78_CLASS_GLOBAL "GLOBAL "
00726 #define saf78_CLASS_GMBR "GMBR "
00727 #define saf78_CLASS_GSDSF "GSDSF "
00728 #define saf78_CLASS_GTERMINL "GTERMINL"
00729 #define saf78_CLASS_GXFACILI "GXFACILI"
00730 #define saf78_CLASS_IBMOPC "IBMOPC "
00731 #define saf78_CLASS_JESINPUT "JESINPUT"
00732 #define saf78_CLASS_JESJOBS "JESJOBS "
00733 #define saf78_CLASS_JESSPOOL "JESSPOOL"
00734 #define saf78_CLASS_KEYSMSTR "KEYSMSTR"
00735 #define saf78_CLASS_LDAPBIND "LDAPBIND"
00736 #define saf78_CLASS_LOGSTRM "LOGSTRM "
00737 #define saf78_CLASS_NODES "NODES "
00738 #define saf78_CLASS_NODMBR "NODMBR "
00739 #define saf78_CLASS_OPERCMDS "OPERCMDS"
00740 #define saf78_CLASS_PHYSFILE "PHYSFILE"
00741 #define saf78_CLASS_PMBR "PMBR "
00742 #define saf78_CLASS_PROGRAM "PROGRAM "
00743 #define saf78_CLASS_PROPCNTL "PROPCNTL"
00744 #define saf78_CLASS_PSFMPL "PSFMPL "
00745 #define saf78_CLASS_PTKTDATA "PTKTDATA"
00746 #define saf78_CLASS_RACGLIST "RACGLIST"
00747 #define saf78_CLASS_RACFEVNT "RACFEVNT"
00748 #define saf78_CLASS_RRSFDATA "RRSFDATA"
00749 #define saf78_CLASS_RVARSMBR "RVARSMBR"
00750 #define saf78_CLASS_SCDMBR "SCDMBR "
00751 #define saf78_CLASS_SDSF "SDSF "
00752 #define saf78_CLASS_SECDATA "SECDATA "
00753 #define saf78_CLASS_SECLABEL "SECLABEL"
00754 #define saf78_CLASS_SECLMBR "SECLMBR "
00755 #define saf78_CLASS_SERVAUTH "SERVAUTH"
00756 #define saf78_CLASS_SERVER "SERVER "
00757 #define saf78_CLASS_SMESSAGE "SMESSAGE"
00758 #define saf78_CLASS_SOMDOBJS "SOMDOBJS"
00759 #define saf78_CLASS_STARTED "STARTED "
00760 #define saf78_CLASS_SURROGAT "SURROGAT"
00761 #define saf78_CLASS_SYSMVIEW "SYSMVIEW"
00762 #define saf78_CLASS_TAPEVOL "TAPEVOL "
00763 #define saf78_CLASS_TEMPDSN "TEMPDSN "
00764 #define saf78_CLASS_TERMINAL "TERMINAL"
00765 #define saf78_CLASS_VTAMAPPL "VTAMAPPL"
00766 #define saf78_CLASS_WRITER "WRITER "
00767 #define saf78_CLASS_XFACILIT "XFACILIT"
00768
00769
00770
00771 #define saf78_CLASS_ACICSPCT "ACICSPCT"
00772 #define saf78_CLASS_BCICSPCT "BCICSPCT"
00773 #define saf78_CLASS_CCICSCMD "CCICSCMD"
00774 #define saf78_CLASS_CPSMOBJ "CPSMOBJ "
00775 #define saf78_CLASS_CPSMXMP "CPSMXMP "
00776 #define saf78_CLASS_DCICSDCT "DCICSDCT"
00777 #define saf78_CLASS_ECICSDCT "ECICSDCT"
00778 #define saf78_CLASS_FCICSFCT "FCICSFCT"
00779 #define saf78_CLASS_GCICSTRN "GCICSTRN"
00780 #define saf78_CLASS_GCPSMOBJ "GCPSMOBJ"
00781 #define saf78_CLASS_HCICSFCT "HCICSFCT"
00782 #define saf78_CLASS_JCICSJCT "JCICSJCT"
00783 #define saf78_CLASS_KCICSJCT "KCICSJCT"
00784 #define saf78_CLASS_MCICSPPT "MCICSPPT"
00785 #define saf78_CLASS_NCICSPPT "NCICSPPT"
00786 #define saf78_CLASS_PCICSPSB "PCICSPSB"
00787 #define saf78_CLASS_QCICSPSB "QCICSPSB"
00788 #define saf78_CLASS_SCICSTST "SCICSTST"
00789 #define saf78_CLASS_TCICSTRN "TCICSTRN"
00790 #define saf78_CLASS_UCICSTST "UCICSTST"
00791 #define saf78_CLASS_VCICSCMD "VCICSCMD"
00792
00793
00794
00795 #define saf78_CLASS_DSNADM "DSNADM "
00796 #define saf78_CLASS_DSNR "DSNR "
00797 #define saf78_CLASS_GDSNBP "GDSNBP "
00798 #define saf78_CLASS_GDSNCL "GDSNCL "
00799 #define saf78_CLASS_GDSNDB "GDSNDB "
00800 #define saf78_CLASS_GDSNJR "GDSNJR "
00801 #define saf78_CLASS_GDSNPK "GDSNPK "
00802 #define saf78_CLASS_GDSNPN "GDSNPN "
00803 #define saf78_CLASS_GDSNSC "GDSNSC "
00804 #define saf78_CLASS_GDSNSG "GDSNSG "
00805 #define saf78_CLASS_GDSNSM "GDSNSM "
00806 #define saf78_CLASS_GDSNSP "GDSNSP "
00807 #define saf78_CLASS_GDSNSQ "GDSNSQ "
00808 #define saf78_CLASS_GDSNTB "GDSNTB "
00809 #define saf78_CLASS_GDSNTS "GDSNTS "
00810 #define saf78_CLASS_GDSNUT "GDSNUT "
00811 #define saf78_CLASS_MDSNBP "MDSNBP "
00812 #define saf78_CLASS_MDSNCL "MDSNCL "
00813 #define saf78_CLASS_MDSNDB "MDSNDB "
00814 #define saf78_CLASS_MDSNJR "MDSNJR "
00815 #define saf78_CLASS_MDSNPK "MDSNPK "
00816 #define saf78_CLASS_MDSNPN "MDSNPN "
00817 #define saf78_CLASS_MDSNSC "MDSNSC "
00818 #define saf78_CLASS_MDSNSG "MDSNSG "
00819 #define saf78_CLASS_MDSNSM "MDSNSM "
00820 #define saf78_CLASS_MDSNSP "MDSNSP "
00821 #define saf78_CLASS_MDSNSQ "MDSNSQ "
00822 #define saf78_CLASS_MDSNTB "MDSNTB "
00823 #define saf78_CLASS_MDSNTS "MDSNTS "
00824 #define saf78_CLASS_MDSNUF "MDSNUF "
00825 #define saf78_CLASS_MDSNUT "MDSNUT "
00826
00827
00828
00829 #define saf78_CLASS_DCEUUIDS "DCEUUIDS"
00830 #define saf78_CLASS_RAUDITX "RAUDITX "
00831 #define saf78_CLASS_EJBROLE "EJBROLE "
00832 #define saf78_CLASS_GEJBROLE "GEJBROLE"
00833 #define saf78_CLASS_JAVA "JAVA "
00834
00835
00836
00837 #define saf78_CLASS_AIMS "AIMS "
00838 #define saf78_CLASS_CIMS "CIMS "
00839 #define saf78_CLASS_DIMS "DIMS "
00840 #define saf78_CLASS_FIMS "FIMS "
00841 #define saf78_CLASS_GIMS "GIMS "
00842 #define saf78_CLASS_HIMS "HIMS "
00843 #define saf78_CLASS_IIMS "IIMS "
00844 #define saf78_CLASS_JIMS "JIMS "
00845 #define saf78_CLASS_LIMS "LIMS "
00846 #define saf78_CLASS_MIMS "MIMS "
00847 #define saf78_CLASS_OIMS "OIMS "
00848 #define saf78_CLASS_PIMS "PIMS "
00849 #define saf78_CLASS_QIMS "QIMS "
00850 #define saf78_CLASS_SIMS "SIMS "
00851 #define saf78_CLASS_TIMS "TIMS "
00852 #define saf78_CLASS_UIMS "UIMS "
00853 #define saf78_CLASS_WIMS "WIMS "
00854
00855
00856
00857 #define saf78_CLASS_PRINTSRV "PRINTSRV"
00858
00859
00860
00861 #define saf78_CLASS_GINFOMAN "GINFOMAN"
00862 #define saf78_CLASS_INFOMAN "INFOMAN "
00863
00864
00865
00866 #define saf78_CLASS_LFSCLASS "LFSCLASS"
00867
00868
00869
00870 #define saf78_CLASS_ILMADMIN "ILMADMIN"
00871
00872
00873
00874 #define saf78_CLASS_NDSLINK "NDSLINK "
00875 #define saf78_CLASS_NOTELINK "NOTELINK"
00876
00877
00878
00879 #define saf78_CLASS_GMQADMIN "GMQADMIN"
00880 #define saf78_CLASS_GMQCHAN "GMQCHAN "
00881 #define saf78_CLASS_GMQNLIST "GMQNLIST"
00882 #define saf78_CLASS_GMQPROC "GMQPROC "
00883 #define saf78_CLASS_GMQQUEUE "GMQQUEUE"
00884 #define saf78_CLASS_MQADMIN "MQADMIN "
00885 #define saf78_CLASS_MQCHAN "MQCHAN "
00886 #define saf78_CLASS_MQCMDS "MQCMDS "
00887 #define saf78_CLASS_MQCONN "MQCONN "
00888 #define saf78_CLASS_MQNLIST "MQNLIST "
00889 #define saf78_CLASS_MQPROC "MQPROC "
00890 #define saf78_CLASS_MQQUEUE "MQQUEUE "
00891
00892
00893
00894 #define saf78_CLASS_NETCMDS "NETCMDS "
00895 #define saf78_CLASS_NETSPAN "NETSPAN"
00896 #define saf78_CLASS_NVASAPDT "NVASAPDT"
00897 #define saf78_CLASS_PTKTVAL "PTKTVAL "
00898 #define saf78_CLASS_RMTOPS "RMTOPS "
00899 #define saf78_CLASS_RODMMGR "RODMMGR "
00900
00901
00902
00903 #define saf78_CLASS_KERBLINK "KERBLINK"
00904 #define saf78_CLASS_REALM "REALM "
00905
00906
00907
00908 #define saf78_CLASS_MGMTCLAS "MGMTCLAS"
00909 #define saf78_CLASS_STORCLAS "STORCLAS"
00910 #define saf78_CLASS_SUBSYSNM "SUBSYSNM"
00911
00912
00913
00914 #define saf78_CLASS_ROLE "ROLE "
00915 #define saf78_CLASS_TMEADMIN "TMEADMIN"
00916
00917
00918
00919 #define saf78_CLASS_ACCTNUM "ACCTNUM "
00920 #define saf78_CLASS_PERFGRP "PERFGRP "
00921 #define saf78_CLASS_TSOAUTH "TSOAUTH "
00922 #define saf78_CLASS_TSOPROC "TSOPROC "
00923
00924
00925
00926 #define saf78_CLASS_DIRACC "DIRACC "
00927 #define saf78_CLASS_DIRSRCH "DIRSRCH "
00928 #define saf78_CLASS_FSOBJ "FSOBJ "
00929 #define saf78_CLASS_FSSEC "FSSEC "
00930 #define saf78_CLASS_IPCOBJ "IPCOBJ "
00931 #define saf78_CLASS_PROCACT "PROCACT "
00932 #define saf78_CLASS_PROCESS "PROCESS "
00933 #define saf78_CLASS_UNIXMAP "UNIXMAP "
00934 #define saf78_CLASS_UNIXPRIV "UNIXPRIV"
00935
00936
00937
00938 #define saf78_CLASS_ESRDCT "ESRDCT "
00939 #define saf78_CLASS_ESRFCT "ESRFCT "
00940 #define saf78_CLASS_ESRGRP "ESRGRP "
00941 #define saf78_CLASS_ESRICE "ESRICE "
00942 #define saf78_CLASS_ESRIMS "ESRIMS "
00943 #define saf78_CLASS_ESRJCT "ESRJCT "
00944 #define saf78_CLASS_ESRJES "ESRJES "
00945 #define saf78_CLASS_ESRMPR "ESRMPR "
00946 #define saf78_CLASS_ESRPCT "ESRPCT "
00947 #define saf78_CLASS_ESRPLT "ESRPLT "
00948 #define saf78_CLASS_ESRPPT "ESRPPT "
00949 #define saf78_CLASS_ESRSIT "ESRSIT "
00950 #define saf78_CLASS_ESRSNT "ESRSNT "
00951 #define saf78_CLASS_ESRSUP "ESRSUP "
00952 #define saf78_CLASS_ESRSYS6 "ESRSYS6 "
00953 #define saf78_CLASS_ESRSYSC "ESRSYSC "
00954 #define saf78_CLASS_ESRTABLE "ESRTABLE"
00955 #define saf78_CLASS_ESRTCT "ESRTCT "
00956 #define saf78_CLASS_ESRTERM "ESRTERM "
00957 #define saf78_CLASS_ESRTST "ESRTST "
00958 #define saf78_CLASS_ESRTTYPE "ESRTTYPE"
00959 #define saf78_CLASS_ESRXAT "ESRXAT "
00960 #define saf78_CLASS_ESRXLT "ESRXLT "
00961 #define saf78_CLASS_ESRCP "ESRCP "
00962 #define saf78_CLASS_ESRIIN "ESRIIN "
00963 #define saf78_CLASS_ESRIMPR "ESRIMPR "
00964 #define saf78_CLASS_ESRJIN "ESRJIN "
00965 #define saf78_CLASS_ESRJPR "ESRJPR "
00966 #define saf78_CLASS_ESRLIS "ESRLIS "
00967 #define saf78_CLASS_ESRPKG "ESRPKG "
00968 #define saf78_CLASS_ESRRQH "ESRRQH "
00969 #define saf78_CLASS_ESRSRV "ESRSRV "
00970 #define saf78_CLASS_ESRSVC "ESRSVC "
00971 #define saf78_CLASS_ESRXRM "ESRXRM "
00972 #define saf78_CLASS_MFDSADMN "MFDSADMN"
00973 #define saf78_CLASS_MFDSREP "MFDSREP "
00974
00976
00977
00978
00981 #define saf78_ADMIN_ACL "ACL"
00982 #define saf78_ADMIN_ALLOW_ON "ALLOW"
00983 #define saf78_ADMIN_CLASS "CLASS"
00984 #define saf78_ADMIN_CUST_TXT "CUSTOM"
00985 #define saf78_ADMIN_DEF_GROUP "DEFGROUP"
00986 #define saf78_ADMIN_DESCRIPT "DESC"
00987 #define saf78_ADMIN_DSP_NAME "NAME"
00988 #define saf78_ADMIN_EXPIRATION "EXPIRES"
00989 #define saf78_ADMIN_GROUPNAME "GROUP"
00990 #define saf78_ADMIN_GROUPS "GROUPS"
00991 #define saf78_ADMIN_GRP_PREFIX "GRPPFX"
00992 #define saf78_ADMIN_MEMBERS "MEMBERS"
00993 #define saf78_ADMIN_LOGIN_TIME "LASTTIME"
00994 #define saf78_ADMIN_LOGIN_TRIES "ATTEMPTS"
00995 #define saf78_ADMIN_OPER_CLASS "OPCLASS"
00996 #define saf78_ADMIN_OPER_ID "OPID"
00997 #define saf78_ADMIN_PASS_CHG "PASSCHG"
00998 #define saf78_ADMIN_PASS_EXP "PASSEXP"
00999 #define saf78_ADMIN_PASSWORD "PASSWORD"
01000 #define saf78_ADMIN_PRIORITY "PRIORITY"
01001 #define saf78_ADMIN_RESNAME "RESOURCE"
01002 #define saf78_ADMIN_TIMEOUT "TIMEOUT"
01003 #define saf78_ADMIN_TOK_CREATE "GETTOKEN"
01004 #define saf78_ADMIN_TOK_USE "USETOKEN"
01005 #define saf78_ADMIN_UID "UID"
01006 #define saf78_ADMIN_USERNAME "USER"
01008
01009
01010
01011
01014 #define saf78_PERM_EXECUTE (1<<0)
01015 #define saf78_PERM_READ (1<<1)
01016 #define saf78_PERM_UPDATE (1<<2)
01017 #define saf78_PERM_ADD (1<<3)
01018 #define saf78_PERM_DELETE (1<<4)
01019 #define saf78_PERM_CONTROL (1<<5)
01020 #define saf78_PERM_ALTER (1<<6)
01022
01023
01024
01025
01026
01029 #define saf78_UPDATE_ADD 1
01030 #define saf78_UPDATE_MODIFY 2
01031 #define saf78_UPDATE_DELETE 3
01032 #define saf78_UPDATE_OTHER 0
01034
01035
01036
01037
01038
01039
01060
01065
01066
01067
01069 #define saf78_SAF_RC_SUCCESS 0
01071 #define saf78_RC_NORMAL 0
01072
01073 #define saf78_RS_NORMAL 0
01074 #define saf78_RS_PWRD_CHANGED 4
01075
01076 #define saf78_RC_TOKEN_INFO 4
01077
01079 #define saf78_RS_TOKEN_TOO_LARGE 12
01080 #define saf78_RS_STOKEN_TOO_LARGE 16
01081
01084 #define saf78_SAF_RC_NOT_COMPLETE 4
01086 #define saf78_RC_NO_DECISION 0
01088 #define saf78_RS_ESM_NOT_CALLED 0
01089
01090 #define saf78_RC_NO_USER_PROFILE 4
01091
01092 #define saf78_RC_SECURITY_NOT_ACTIVE 32
01093
01094 #define saf78_RC_NO_FACILITY_CLASS 88
01095
01097 #define saf78_SAF_RC_FAILURE 8
01098
01099
01101 #define saf78_RC_PWRD_INVALID 8
01102 #define saf78_RC_PWRD_EXPIRED 12
01103 #define saf78_RC_PWRD_CHANGE_ERR 16
01104
01107 #define saf78_RS_PWRD_HISTORY 4
01108 #define saf78_RS_PWRD_NO_CHANGE 8
01112 #define saf78_RC_USER_NOT_IN_GROUP 20
01113 #define saf78_RC_INST_EXIT 24
01114 #define saf78_RC_USER_REVOKED 28
01115 #define saf78_RC_GROUP_REVOKED 36
01116 #define saf78_RC_OID_REQUIRED 40
01117 #define saf78_RC_OID_INVALID 44
01118 #define saf78_RC_PORT_OF_ENTRY_ERR 48
01119
01122 #define saf78_RS_PORT 0
01123 #define saf78_RS_USER_TIME 4
01124 #define saf78_RS_PORT_TIME 8
01125
01128 #define saf78_RC_NOT_AUTH_FOR_APPL 52
01129 #define saf78_RC_SECLABEL_FAIL 56
01130
01133 #define saf78_RS_MLACTIVE_REQUIRES 4
01134 #define saf78_RS_NOT_AUTH_SECLABEL 8
01135 #define saf78_RS_MULTILEVEL_DOM 12
01136 #define saf78_RS_DISJOINT 16
01137 #define saf78_RS_NOT_EQUIVALENT 20
01138
01141 #define saf78_RC_DEFAULT_TOKEN_USED 68
01142 #define saf78_RC_UNPRIV_TRANQUIL 72
01143 #define saf78_RC_NODES_CHECK_FAIL 76
01144
01147 #define saf78_RS_NODE_NOT_ALLOWED 0
01148 #define saf78_RS_USERID_UACC_NONE 4
01149 #define saf78_RS_GROUP_UACC_NONE 8
01150 #define saf78_RS_SECLABEL_UACC_NONE 12
01151 #define saf78_RS_NO_LOCAL_SUBMIT 16
01152 #define saf78_RS_REVERIFY_FAIL 20
01153
01155 #define saf78_RC_SURROGATE_SUB_FAIL 80
01156
01158 #define saf78_RS_SURROGATE_INACTIVE 4
01159 #define saf78_RS_SUB_NOT_PERMITTED 8
01160 #define saf78_RS_JOB_SECLABEL 12
01161
01164 #define saf78_RC_JESJOBS_CHECK_FAIL 84
01165 #define saf78_RC_DATABASE_ERROR 92
01166 #define saf78_RC_CHECK_SUBPARAM 100
01167 #define saf78_RC_TOKEN_REFUSED 104
01171 #define saf78_RS_TOKEN_FORMAT 4
01172 #define saf78_RS_TOKEN_EXPIRED 8
01173 #define saf78_RS_TOKEN_TYPE 12
01174 #define saf78_RS_TOKEN_INVALID 16
01175 #define saf78_RS_TOKEN_ERROR 20
01176
01178
01179
01180
01181
01182
01183 #define saf78_RC_USER_IS_AUTH 0
01184
01185 #define saf78_RS_RESOURCE_WARN 4
01186 #define saf78_RS_TAPE_VTOC 16
01187 #define saf78_RS_TAPE_CAN_VTOC 32
01188 #define saf78_RS_TAPE_NO_VTOC 36
01189 #define saf78_RC_ACCESS_INFO 20
01190 #define saf78_RS_ACCESS_NONE 0
01191 #define saf78_RS_ACCESS_READ 4
01192 #define saf78_RS_ACCESS_UPDATE 8
01193 #define saf78_RS_ACCESS_CONTROL 12
01194 #define saf78_RS_ACCESS_ALTER 16
01195
01196
01197
01198
01200 #define saf78_RC_RESOURCE_NOT_PROT 4
01201
01203 #define saf78_RS_NO_RESOURCE_PROF 0
01204
01205 #define saf78_RS_STATUS_ERASE 4
01206 #define saf78_RS_CLASS_NOT_DEFINED 8
01207
01209
01210
01211 #define saf78_RC_USER_NOT_AUTH 8
01212 #define saf78_RS_PROTALL_NO_PROF 0
01213 #define saf78_RS_USER_ERASE 4
01214 #define saf78_RS_USER_TAPEVOL 8
01215 #define saf78_RS_USER_TAPE_DS 12
01216 #define saf78_RS_USER_TAPE_BLP 16
01217 #define saf78_RS_NON_CATALOGED 20
01218 #define saf78_RS_USER_AUTH_TRANQ 24
01219 #define saf78_RS_EXEC_ATTEMPT_READ 28
01220 #define saf78_RS_SECLABEL_NOT_DOM 32
01221 #define saf78_RS_SECLABEL_NEV_DOM 36
01222 #define saf78_RS_USER_NO_SECLABEL 40
01223 #define saf78_RS_COND_ACCESS 44
01224 #define saf78_RC_OLDVOL_ERROR 12
01225 #define saf78_RC_THIRD_PARTY_FAIL 16
01226
01227
01228
01229
01230
01231
01232
01233
01234
01235
01236
01237
01238
01239
01240
01241 #define saf78_RC_NO_CLASS 8
01242 #define saf78_RC_INTERNAL_ERROR 12
01243 #define saf78_RC_PARAM_ERROR 16
01244 #define saf78_RS_EVENT_INVALID 0
01245 #define saf78_RS_QUAL_INVALID 4
01246 #define saf78_RS_BAD_LIST_VER 8
01247 #define saf78_RS_BAD_LIST_LEN 12
01248 #define saf78_RS_ENTITY_INVALID 16
01249 #define saf78_RC_NO_AUDIT_DONE 20
01250
01251
01252
01253
01254
01255
01256
01257
01258
01259
01260
01261 #define saf78_RC_MACT_CINACT 4
01262 #define saf78_RC_MACT_NO_CLASS 8
01263 #define saf78_RC_MINACT_CACT 12
01264 #define saf78_RC_MINACT_CINACT 16
01265 #define saf78_RC_MINACT_NO_CLASS 20
01266 #define saf78_RC_NO_ESM 24
01267 #define saf78_RC_BAD_PARMLIST 28
01268
01269
01270
01271
01272
01273
01274
01275
01276
01277
01278
01279
01280
01281 #define saf78_RS_ESM_DECLINED 4
01282 #define saf78_RC_KEYWORD_ERROR 4
01283 #define saf78_RS_KEYWORD_UNKNOWN 4
01284
01285
01286 #define saf78_RC_VALUE_ERROR 4
01287 #define saf78_RS_VALUE_INVALID 4
01288 #define saf78_RS_VALUE_LENGTH 8
01289 #define saf78_RC_DENIED 8
01290
01291
01292
01293
01294
01295
01296
01297
01298
01299
01300
01301
01302
01303
01304 #define saf78_SAF_RC_PARM_ERROR 12
01305 #define saf78_RC_VERSION 1
01306 #define saf78_RC_REQUEST 2
01307 #define saf78_RC_TYPE 3
01308 #define saf78_RC_MODIFIER 4
01309 #define saf78_RC_FLAG 5
01310 #define saf78_RC_CODESET 6
01311 #define saf78_RC_SAFESM_INDEX 7
01312 #define saf78_RC_USERID 8
01313 #define saf78_RC_PWRD 9
01314 #define saf78_RC_NEWPWRD 10
01315 #define saf78_RC_ENTITY 11
01316 #define saf78_RC_FACILITY 12
01317 #define saf78_RC_TRANSACTION 13
01318 #define saf78_RC_LOGSTR 14
01319 #define saf78_RC_QUERY_NAME 15
01320 #define saf78_RC_NEXT 16
01321 #define saf78_RC_RETURN_AREA 17
01322 #define saf78_RC_ACEE_PTR 18
01323 #define saf78_RC_GROUP 19
01324 #define saf78_RC_CLASS 20
01325 #define saf78_RC_STRING1 21
01326 #define saf78_RC_STRING2 22
01327 #define saf78_RC_PERMISSIONS 23
01328 #define saf78_RC_ARGSTR 24
01329 #define saf78_RC_ARGTBL 25
01330 #define saf78_RC_ARGTBL_KEYPTR 26
01331 #define saf78_RC_ARGTBL_KEYLEN 27
01332 #define saf78_RC_ARGTBL_VALPTR 28
01333 #define saf78_RC_ARGTBL_VALLEN 29
01334 #define saf78_RC_TICKET 30
01335 #define saf78_RC_TOKEN 31
01336 #define saf78_RC_LIST 32
01337 #define saf78_RS_BAD_POINTER 1
01338 #define saf78_RS_BAD_VALUE 2
01339
01342
01343
01344
01345 #define safpb_cur_ver_88 1
01346
01347 #define safpb_verify_req_88 1
01348 #define safpb_auth_req_88 2
01349 #define safpb_audit_req_88 3
01350 #define safpb_stat_req_88 4
01351
01352 #define safpb_verify_create_88 1
01353 #define safpb_verify_destroy_88 2
01354
01355 #define safpb_auth_none_88 0
01356 #define safpb_auth_stat_access_88 1
01357 #define safpb_auth_read_88 2
01358 #define safpb_auth_update_88 4
01359 #define safpb_auth_control_88 8
01360 #define safpb_auth_exec_88 16
01361 #define safpb_auth_alter_88 128
01362
01363 #define safpb_audit_success_88 1
01364 #define safpb_audit_failure_88 2
01365
01366 #define safpb_stat_esm_88 1
01367 #define safpb_stat_class_88 2
01368
01369 #define safpb_mod_CICS_88 1
01370 #define safpb_mod_IMS_88 2
01371 #define safpb_mod_JCL_88 3
01372 #define safpb_mod_ESMAC_88 4
01373 #define safpb_mod_WEB_88 5
01374 #define safpb_mod_BINP_88 6
01375 #define safpb_mod_CGI_88 7
01376 #define safpb_mod_MFDS_88 8
01377
01378 #define safpb_flag_PW_encrypt_88 1
01379 #define safpb_ver_no_password_88 2
01380 #define safpb_flag_api_test_88 64
01381 #define safpb_flag_api_display_88 128
01382
01383 #define safpb_codeset_utf8_88 0
01384
01385 #define safpb_api_ag_ok_88 "\x00\x00\x00"
01386 #define safpb_api_ag_authorized_88 "\x00\x00\x00"
01387 #define safpb_api_ag_not_auth_88 "\x08\x08\x00"
01388 #define safpb_api_ag_pw_changed_88 "\x00\x00\x04"
01389 #define safpb_api_ag_pw_error_88 "\x08\x08\x00"
01390 #define safpb_api_ag_pw_expired_88 "\x08\x0C\x00"
01391 #define safpb_api_ag_pw_upd_error_88 "\x08\x18\x18"
01392 #define safpb_api_ag_id_error_88 "\x08\x04\x00"
01393 #define safpb_api_ag_id_revoked_88 "\x08\x1C\x00"
01394 #define safpb_api_ag_id_g_revoked_88 "\x08\x24\x00"
01395 #define safpb_api_ag_version_err_88 "\x08\x18\x1C"
01396 #define safpb_api_ag_parm_null_88 "\x08\x18\x20"
01397 #define safpb_api_ag_parm_invalid_88 "\x08\x18\x24"
01398 #define safpb_api_ag_parm_unsup_88 "\x08\x18\x28"
01399 #define safpb_api_ag_cl_dont_care_88 "\x08\x18\x2C"
01400 #define safpb_api_ag_rs_dont_care_88 "\x08\x18\x30"
01401 #define safpb_api_ag_not_protect_88 "\x04\x04\x00"
01402 #define safpb_api_ag_esm_error_88 "\x08\x18\x34"
01403 #define safpb_api_ag_access_set_88 "\x00\x14\x00"
01404
01405 #define safpb_api_rc_ok_88 0
01406 #define safpb_api_rc_incomp_88 4
01407 #define safpb_api_rc_failed_88 8
01408
01409 #define safpb_mgr_rc_ok_88 0
01410 #define safpb_mgr_not_protect_88 4
01411 #define safpb_mgr_not_auth_88 8
01412 #define safpb_mgr_access_88 20
01413 #define safpb_mgr_error_88 24
01414
01415 #define safpb_access_not_auth_88 0
01416 #define safpb_access_read_88 4
01417 #define safpb_access_update_88 8
01418 #define safpb_access_control_88 12
01419 #define safpb_access_alter_88 16
01420
01421 #define safpb_auth_jes_DATASET_88 "DATASET"
01422 #define safpb_auth_jes_JESINPUT_88 "JESINPUT"
01423 #define safpb_auth_jes_JESJOBS_88 "JESJOBS"
01424 #define safpb_auth_jes_JESSPOOL_88 "JESSPOOL"
01425 #define safpb_auth_jes_SURROGAT_88 "SURROGAT"
01426 #define safpb_auth_jes_PHYSFILE_88 "PHYSFILE"
01427 #define safpb_auth_mfd_ESRCP_88 "ESRCP"
01428 #define safpb_auth_mfd_ESRIIN_88 "ESRIIN"
01429 #define safpb_auth_mfd_ESRIMPR_88 "ESRIMPR"
01430 #define safpb_auth_mfd_ESRJIN_88 "ESRJIN"
01431 #define safpb_auth_mfd_ESRJPR_88 "ESRJPR"
01432 #define safpb_auth_mfd_ESRLIS_88 "ESRLIS"
01433 #define safpb_auth_mfd_ESRPKG_88 "ESRPKG"
01434 #define safpb_auth_mfd_ESRRQH_88 "ESRRQH"
01435 #define safpb_auth_mfd_ESRSRV_88 "ESRSRV"
01436 #define safpb_auth_mfd_ESRSVC_88 "ESRSVC"
01437 #define safpb_auth_mfd_ESRXRM_88 "ESRXRM"
01438 #define safpb_auth_mfd_MFDSADMN_88 "MFDSADMN"
01439 #define safpb_auth_mfd_MFDSREP_88 "MFDSREP"
01440
01441
01442
01443
01444
01445
01446 #ifdef saf78_SAFADMIN_DATA_AREAS
01447 typedef struct safadmin_cmdtbl
01448 {
01449 char safadmin_cmdname[16];
01450 mf_uns8 safadmin_cmdtype;
01451 mf_uns8 safadmin_cmdlen;
01452 } Safadmin_Cmdtbl[21];
01453
01454
01455
01456 static Safadmin_Cmdtbl sSafCommands =
01457 {
01458 "ADDUSER ",saf78_TYPE_ADMIN_ADDUSER, 7,
01459 "ADDGROUP ",saf78_TYPE_ADMIN_ADDGROUP, 8,
01460 "ADDRESOURCE ",saf78_TYPE_ADMIN_ADDRES, 11,
01461 "ALTUSER ",saf78_TYPE_ADMIN_ALTUSER, 7,
01462 "ALTGROUP ",saf78_TYPE_ADMIN_ALTGROUP, 8,
01463 "ALTRESOURCE ",saf78_TYPE_ADMIN_ALTRES, 11,
01464 "DELUSER ",saf78_TYPE_ADMIN_DELUSER, 7,
01465 "DELGROUP ",saf78_TYPE_ADMIN_DELGROUP, 8,
01466 "DELRESOURCE ",saf78_TYPE_ADMIN_DELRES, 11,
01467 "LISTUSER ",saf78_TYPE_ADMIN_LISTUSER, 8,
01468 "LISTGROUP ",saf78_TYPE_ADMIN_LISTGROUP,9,
01469 "LISTRESOURCE ",saf78_TYPE_ADMIN_LISTRES, 12,
01470 "ADDCLASS ",saf78_TYPE_ADMIN_ADDCLASS, 8,
01471 "ALTCLASS ",saf78_TYPE_ADMIN_ALTCLASS, 8,
01472 "SETPASSWORD ",saf78_TYPE_ADMIN_SETPSWD, 11,
01473 "PERMIT ",saf78_TYPE_ADMIN_PERMIT, 6,
01474 "SETOPTIONS ",saf78_TYPE_ADMIN_SETOPTS, 10,
01475 "FREELIST ",saf78_TYPE_ADMIN_FREELIST, 8,
01476 "LISTCLASS ",saf78_TYPE_ADMIN_LISTCLASS,9,
01477 "DELCLASS ",saf78_TYPE_ADMIN_DELCLASS, 8,
01478 " ",0, 0
01479 };
01480 #endif
01481
01482
01483
01484
01485
01486
01487
01488
01489
01490 #endif