safapi.h File Reference


Detailed Description

ESF Application Program Interface. Data structures and other definitions for the ESF API, the interface to the ESF Manager for security consumers.

Definition in file safapi.h.

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  SafAdminArgTbl
struct  SafAdminListItem
struct  SafAdminList
struct  safpb_verify
 Verify request structure. More...
struct  safpb_auth
 Auth request structure. More...
struct  safpb_xauth
 XAuth request structure. More...
struct  safpb_audit
 Audit request structure. More...
struct  safpb_stat
 Stat request structure. More...
struct  safpb_admin
 Admin request structure. More...
struct  safpb_update
 Update request structure. More...
struct  safpb_parameter_block
 ESF "SAFROUTE" API Parameter Block. More...

Defines

#define safadmin_argtbl   SafAdminArgTbl
#define Safadmin_Argtbl   SafAdminArgTbl
#define safadmin_argkeyptr   KeyPtr
 keyword pointer
#define safadmin_argvalptr   ValPtr
 value pointer
#define safadmin_argkeylen   KeyLen
 keyword length
#define safadmin_argvallen   ValLen
 value length
#define safadmin_argesmword   EsmRet
 esm return area
#define saf78_VERSION_1   1
 current API version
#define saf78_REQUEST_VERIFY   1
 Verify user credentials.
#define saf78_REQUEST_AUTH   2
 Authorize access.
#define saf78_REQUEST_AUDIT   3
 Raise audit event.
#define saf78_REQUEST_STAT   4
 Get status.
#define saf78_REQUEST_XAUTH   5
 Extended authorization.
#define saf78_REQUEST_ADMIN   6
 Admin functions.
#define saf78_REQUEST_UPDATE   7
 Update notification.
#define saf78_TYPE_ENVIR_CREATE   1
 Verify: sign user in.
#define saf78_TYPE_ENVIR_DESTROY   2
 Verify: sign user out.
#define saf78_TYPE_TOKEN_CREATE   3
 Verify: create passtoken.
#define saf78_TYPE_TOKEN_DELETE   4
 Verify: delete passtoken.
#define saf78_TYPE_ATTR_NONE   0
 Auth: no access requested.
#define saf78_TYPE_ATTR_STATUS_ACC   1
 Auth: query access.
#define saf78_TYPE_ATTR_READ   2
 Auth: check read access.
#define saf78_TYPE_ATTR_UPDATE   4
 Auth: check update access.
#define saf78_TYPE_ATTR_CONTROL   8
 Auth: check control access.
#define saf78_TYPE_ATTR_EXECUTE   16
 Auth: check execute access.
#define saf78_TYPE_ATTR_ALTER   128
 Auth: check alter access.
#define saf78_TYPE_RESULT_SUCCESS   1
 Audit: send success event.
#define saf78_TYPE_RESULT_FAILURE   2
 Audit: send failure event.
#define saf78_TYPE_QUERY_ESM   1
 Stat: query ESM.
#define saf78_TYPE_QUERY_CLASS   2
 Stat: query class.
#define saf78_TYPE_ADMIN_ADDUSER   1
 Admin: add user.
#define saf78_TYPE_ADMIN_ADDGROUP   2
 Admin: add group.
#define saf78_TYPE_ADMIN_ADDCLASS   13
 Admin: add resource class.
#define saf78_TYPE_ADMIN_ADDRES   3
 Admin: add resource.
#define saf78_TYPE_ADMIN_ALTUSER   4
 Admin: alter user.
#define saf78_TYPE_ADMIN_ALTGROUP   5
 Admin: alter group.
#define saf78_TYPE_ADMIN_ALTCLASS   14
 Admin: alter class.
#define saf78_TYPE_ADMIN_ALTRES   6
 Admin: alter resource.
#define saf78_TYPE_ADMIN_DELUSER   7
 Admin: delete user.
#define saf78_TYPE_ADMIN_DELGROUP   8
 Admin: delete group.
#define saf78_TYPE_ADMIN_DELCLASS   20
 Admin: delete class.
#define saf78_TYPE_ADMIN_DELRES   9
 Admin: delete resource.
#define saf78_TYPE_ADMIN_LISTUSER   10
 Admin: list users.
#define saf78_TYPE_ADMIN_LISTGROUP   11
 Admin: list groups.
#define saf78_TYPE_ADMIN_LISTCLASS   19
 Admin: list resource classes.
#define saf78_TYPE_ADMIN_LISTRES   12
 Admin: list resources.
#define saf78_TYPE_ADMIN_SETPSWD   15
 Admin: set password.
#define saf78_TYPE_ADMIN_PERMIT   16
 Admin:.
#define saf78_TYPE_ADMIN_SETOPTS   17
 Admin:.
#define saf78_TYPE_ADMIN_FREELIST   18
 Admin: free returned list.
#define saf78_TYPE_UPDATE_USER   1
 Update named user info.
#define saf78_TYPE_UPDATE_GROUP   2
 Update named group info.
#define saf78_TYPE_UPDATE_RESOURCE   3
 Update named resource info.
#define saf78_TYPE_UPDATE_USERS   4
 Update all user info.
#define saf78_TYPE_UPDATE_GROUPS   5
 Update all group info.
#define saf78_TYPE_UPDATE_RESOURCES   6
 Update all resource info.
#define saf78_TYPE_UPDATE_ALL   0
 Update all info.
#define saf78_MODIFIER_NONE   0
 No subsystem applies.
#define saf78_MODIFIER_CICS   1
 Request from CICS.
#define saf78_MODIFIER_IMS   2
 Request from IMS.
#define saf78_MODIFIER_JCL   3
 Request from JES/TSO.
#define saf78_MODIFIER_ESMAC   4
 Request from ESMAC.
#define saf78_MODIFIER_WEB   5
 Web Services request.
#define saf78_MODIFIER_BINP   6
 J2EE or CSBIND request.
#define saf78_MODIFIER_CGI   7
 CGI request.
#define saf78_MODIFIER_MFDS   8
 Request from MFDS.
#define saf78_FLAG_PW_ENCRYPT   1
 Reserved.
#define saf78_VER_NO_PASSWORD   2
 Verify without password.
#define saf78_VER_PT_TICKET   4
 Return passtoken ticket.
#define saf78_VER_PASSTOKEN   8
 Verify with passtoken.
#define saf78_VER_PT_SURROGATE   16
 Surrogate passtoken allowed.
#define saf78_FLAG_API_TEST   64
 Test only.
#define saf78_FLAG_API_DISPLAY   128
 Trace to stdout.
#define saf78_CODESET_UTF8   0
 Character set is UTF-8.
#define saf78_CLASS_DATASET   "DATASET "
#define saf78_CLASS_ALCSAUTH   "ALCSAUTH"
#define saf78_CLASS_APPCLU   "APPCLU "
#define saf78_CLASS_APPCPORT   "APPCPORT"
#define saf78_CLASS_APPCSERV   "APPCSERV"
#define saf78_CLASS_APPCSI   "APPCSI "
#define saf78_CLASS_APPCTP   "APPCTP "
#define saf78_CLASS_APPL   "APPL "
#define saf78_CLASS_CACHECLS   "CACHECLS"
#define saf78_CLASS_CBIND   "CBIND "
#define saf78_CLASS_CDT   "CDT "
#define saf78_CLASS_CONSOLE   "CONSOLE "
#define saf78_CLASS_CSFKEYS   "CSFKEYS "
#define saf78_CLASS_CSFSERV   "CSFSERV "
#define saf78_CLASS_DASDVOL   "DASDVOL "
#define saf78_CLASS_DBNFORM   "DBNFORM "
#define saf78_CLASS_DEVICES   "DEVICES "
#define saf78_CLASS_DIGTCERT   "DIGTCERT"
#define saf78_CLASS_DIGTCRIT   "DIGTCRIT"
#define saf78_CLASS_DIGTNMAP   "DIGTNMAP"
#define saf78_CLASS_DIGTRING   "DIGTRING"
#define saf78_CLASS_DIRAUTH   "DIRAUTH "
#define saf78_CLASS_DLFCLASS   "DLFCLASS"
#define saf78_CLASS_FACILITY   "FACILITY"
#define saf78_CLASS_FIELD   "FIELD "
#define saf78_CLASS_GCSFKEYS   "GCSFKEYS"
#define saf78_CLASS_GDASDVOL   "GDASDVOL"
#define saf78_CLASS_GLOBAL   "GLOBAL "
#define saf78_CLASS_GMBR   "GMBR "
#define saf78_CLASS_GSDSF   "GSDSF "
#define saf78_CLASS_GTERMINL   "GTERMINL"
#define saf78_CLASS_GXFACILI   "GXFACILI"
#define saf78_CLASS_IBMOPC   "IBMOPC "
#define saf78_CLASS_JESINPUT   "JESINPUT"
#define saf78_CLASS_JESJOBS   "JESJOBS "
#define saf78_CLASS_JESSPOOL   "JESSPOOL"
#define saf78_CLASS_KEYSMSTR   "KEYSMSTR"
#define saf78_CLASS_LDAPBIND   "LDAPBIND"
#define saf78_CLASS_LOGSTRM   "LOGSTRM "
#define saf78_CLASS_NODES   "NODES "
#define saf78_CLASS_NODMBR   "NODMBR "
#define saf78_CLASS_OPERCMDS   "OPERCMDS"
#define saf78_CLASS_PMBR   "PMBR "
#define saf78_CLASS_PROGRAM   "PROGRAM "
#define saf78_CLASS_PROPCNTL   "PROPCNTL"
#define saf78_CLASS_PSFMPL   "PSFMPL "
#define saf78_CLASS_PTKTDATA   "PTKTDATA"
#define saf78_CLASS_RACGLIST   "RACGLIST"
#define saf78_CLASS_RACFEVNT   "RACFEVNT"
#define saf78_CLASS_RRSFDATA   "RRSFDATA"
#define saf78_CLASS_RVARSMBR   "RVARSMBR"
#define saf78_CLASS_SCDMBR   "SCDMBR "
#define saf78_CLASS_SDSF   "SDSF "
#define saf78_CLASS_SECDATA   "SECDATA "
#define saf78_CLASS_SECLABEL   "SECLABEL"
#define saf78_CLASS_SECLMBR   "SECLMBR "
#define saf78_CLASS_SERVAUTH   "SERVAUTH"
#define saf78_CLASS_SERVER   "SERVER "
#define saf78_CLASS_SMESSAGE   "SMESSAGE"
#define saf78_CLASS_SOMDOBJS   "SOMDOBJS"
#define saf78_CLASS_STARTED   "STARTED "
#define saf78_CLASS_SURROGAT   "SURROGAT"
#define saf78_CLASS_SYSMVIEW   "SYSMVIEW"
#define saf78_CLASS_TAPEVOL   "TAPEVOL "
#define saf78_CLASS_TEMPDSN   "TEMPDSN "
#define saf78_CLASS_TERMINAL   "TERMINAL"
#define saf78_CLASS_VTAMAPPL   "VTAMAPPL"
#define saf78_CLASS_WRITER   "WRITER "
#define saf78_CLASS_XFACILIT   "XFACILIT"
#define saf78_CLASS_ACICSPCT   "ACICSPCT"
#define saf78_CLASS_BCICSPCT   "BCICSPCT"
#define saf78_CLASS_CCICSCMD   "CCICSCMD"
#define saf78_CLASS_CPSMOBJ   "CPSMOBJ "
#define saf78_CLASS_CPSMXMP   "CPSMXMP "
#define saf78_CLASS_DCICSDCT   "DCICSDCT"
#define saf78_CLASS_ECICSDCT   "ECICSDCT"
#define saf78_CLASS_FCICSFCT   "FCICSFCT"
#define saf78_CLASS_GCICSTRN   "GCICSTRN"
#define saf78_CLASS_GCPSMOBJ   "GCPSMOBJ"
#define saf78_CLASS_HCICSFCT   "HCICSFCT"
#define saf78_CLASS_JCICSJCT   "JCICSJCT"
#define saf78_CLASS_KCICSJCT   "KCICSJCT"
#define saf78_CLASS_MCICSPPT   "MCICSPPT"
#define saf78_CLASS_NCICSPPT   "NCICSPPT"
#define saf78_CLASS_PCICSPSB   "PCICSPSB"
#define saf78_CLASS_QCICSPSB   "QCICSPSB"
#define saf78_CLASS_SCICSTST   "SCICSTST"
#define saf78_CLASS_TCICSTRN   "TCICSTRN"
#define saf78_CLASS_UCICSTST   "UCICSTST"
#define saf78_CLASS_VCICSCMD   "VCICSCMD"
#define saf78_CLASS_DSNADM   "DSNADM "
#define saf78_CLASS_DSNR   "DSNR "
#define saf78_CLASS_GDSNBP   "GDSNBP "
#define saf78_CLASS_GDSNCL   "GDSNCL "
#define saf78_CLASS_GDSNDB   "GDSNDB "
#define saf78_CLASS_GDSNJR   "GDSNJR "
#define saf78_CLASS_GDSNPK   "GDSNPK "
#define saf78_CLASS_GDSNPN   "GDSNPN "
#define saf78_CLASS_GDSNSC   "GDSNSC "
#define saf78_CLASS_GDSNSG   "GDSNSG "
#define saf78_CLASS_GDSNSM   "GDSNSM "
#define saf78_CLASS_GDSNSP   "GDSNSP "
#define saf78_CLASS_GDSNSQ   "GDSNSQ "
#define saf78_CLASS_GDSNTB   "GDSNTB "
#define saf78_CLASS_GDSNTS   "GDSNTS "
#define saf78_CLASS_GDSNUT   "GDSNUT "
#define saf78_CLASS_MDSNBP   "MDSNBP "
#define saf78_CLASS_MDSNCL   "MDSNCL "
#define saf78_CLASS_MDSNDB   "MDSNDB "
#define saf78_CLASS_MDSNJR   "MDSNJR "
#define saf78_CLASS_MDSNPK   "MDSNPK "
#define saf78_CLASS_MDSNPN   "MDSNPN "
#define saf78_CLASS_MDSNSC   "MDSNSC "
#define saf78_CLASS_MDSNSG   "MDSNSG "
#define saf78_CLASS_MDSNSM   "MDSNSM "
#define saf78_CLASS_MDSNSP   "MDSNSP "
#define saf78_CLASS_MDSNSQ   "MDSNSQ "
#define saf78_CLASS_MDSNTB   "MDSNTB "
#define saf78_CLASS_MDSNTS   "MDSNTS "
#define saf78_CLASS_MDSNUF   "MDSNUF "
#define saf78_CLASS_MDSNUT   "MDSNUT "
#define saf78_CLASS_DCEUUIDS   "DCEUUIDS"
#define saf78_CLASS_RAUDITX   "RAUDITX "
#define saf78_CLASS_EJBROLE   "EJBROLE "
#define saf78_CLASS_GEJBROLE   "GEJBROLE"
#define saf78_CLASS_JAVA   "JAVA "
#define saf78_CLASS_AIMS   "AIMS "
#define saf78_CLASS_CIMS   "CIMS "
#define saf78_CLASS_DIMS   "DIMS "
#define saf78_CLASS_FIMS   "FIMS "
#define saf78_CLASS_GIMS   "GIMS "
#define saf78_CLASS_HIMS   "HIMS "
#define saf78_CLASS_IIMS   "IIMS "
#define saf78_CLASS_JIMS   "JIMS "
#define saf78_CLASS_LIMS   "LIMS "
#define saf78_CLASS_MIMS   "MIMS "
#define saf78_CLASS_OIMS   "OIMS "
#define saf78_CLASS_PIMS   "PIMS "
#define saf78_CLASS_QIMS   "QIMS "
#define saf78_CLASS_SIMS   "SIMS "
#define saf78_CLASS_TIMS   "TIMS "
#define saf78_CLASS_UIMS   "UIMS "
#define saf78_CLASS_WIMS   "WIMS "
#define saf78_CLASS_PRINTSRV   "PRINTSRV"
#define saf78_CLASS_GINFOMAN   "GINFOMAN"
#define saf78_CLASS_INFOMAN   "INFOMAN "
#define saf78_CLASS_LFSCLASS   "LFSCLASS"
#define saf78_CLASS_ILMADMIN   "ILMADMIN"
#define saf78_CLASS_NDSLINK   "NDSLINK "
#define saf78_CLASS_NOTELINK   "NOTELINK"
#define saf78_CLASS_GMQADMIN   "GMQADMIN"
#define saf78_CLASS_GMQCHAN   "GMQCHAN "
#define saf78_CLASS_GMQNLIST   "GMQNLIST"
#define saf78_CLASS_GMQPROC   "GMQPROC "
#define saf78_CLASS_GMQQUEUE   "GMQQUEUE"
#define saf78_CLASS_MQADMIN   "MQADMIN "
#define saf78_CLASS_MQCHAN   "MQCHAN "
#define saf78_CLASS_MQCMDS   "MQCMDS "
#define saf78_CLASS_MQCONN   "MQCONN "
#define saf78_CLASS_MQNLIST   "MQNLIST "
#define saf78_CLASS_MQPROC   "MQPROC "
#define saf78_CLASS_MQQUEUE   "MQQUEUE "
#define saf78_CLASS_NETCMDS   "NETCMDS "
#define saf78_CLASS_NETSPAN   "NETSPAN"
#define saf78_CLASS_NVASAPDT   "NVASAPDT"
#define saf78_CLASS_PTKTVAL   "PTKTVAL "
#define saf78_CLASS_RMTOPS   "RMTOPS "
#define saf78_CLASS_RODMMGR   "RODMMGR "
#define saf78_CLASS_KERBLINK   "KERBLINK"
#define saf78_CLASS_REALM   "REALM "
#define saf78_CLASS_MGMTCLAS   "MGMTCLAS"
#define saf78_CLASS_STORCLAS   "STORCLAS"
#define saf78_CLASS_SUBSYSNM   "SUBSYSNM"
#define saf78_CLASS_ROLE   "ROLE "
#define saf78_CLASS_TMEADMIN   "TMEADMIN"
#define saf78_CLASS_ACCTNUM   "ACCTNUM "
#define saf78_CLASS_PERFGRP   "PERFGRP "
#define saf78_CLASS_TSOAUTH   "TSOAUTH "
#define saf78_CLASS_TSOPROC   "TSOPROC "
#define saf78_CLASS_DIRACC   "DIRACC "
#define saf78_CLASS_DIRSRCH   "DIRSRCH "
#define saf78_CLASS_FSOBJ   "FSOBJ "
#define saf78_CLASS_FSSEC   "FSSEC "
#define saf78_CLASS_IPCOBJ   "IPCOBJ "
#define saf78_CLASS_PROCACT   "PROCACT "
#define saf78_CLASS_PROCESS   "PROCESS "
#define saf78_CLASS_UNIXMAP   "UNIXMAP "
#define saf78_CLASS_UNIXPRIV   "UNIXPRIV"
#define saf78_CLASS_ESRDCT   "ESRDCT "
#define saf78_CLASS_ESRFCT   "ESRFCT "
#define saf78_CLASS_ESRGRP   "ESRGRP "
#define saf78_CLASS_ESRICE   "ESRICE "
#define saf78_CLASS_ESRIMS   "ESRIMS "
#define saf78_CLASS_ESRJCT   "ESRJCT "
#define saf78_CLASS_ESRJES   "ESRJES "
#define saf78_CLASS_ESRMPR   "ESRMPR "
#define saf78_CLASS_ESRPCT   "ESRPCT "
#define saf78_CLASS_ESRPLT   "ESRPLT "
#define saf78_CLASS_ESRPPT   "ESRPPT "
#define saf78_CLASS_ESRSIT   "ESRSIT "
#define saf78_CLASS_ESRSNT   "ESRSNT "
#define saf78_CLASS_ESRSUP   "ESRSUP "
#define saf78_CLASS_ESRSYS6   "ESRSYS6 "
#define saf78_CLASS_ESRSYSC   "ESRSYSC "
#define saf78_CLASS_ESRTABLE   "ESRTABLE"
#define saf78_CLASS_ESRTCT   "ESRTCT "
#define saf78_CLASS_ESRTERM   "ESRTERM "
#define saf78_CLASS_ESRTST   "ESRTST "
#define saf78_CLASS_ESRTTYPE   "ESRTTYPE"
#define saf78_CLASS_ESRXAT   "ESRXAT "
#define saf78_CLASS_ESRXLT   "ESRXLT "
#define saf78_CLASS_ESRCP   "ESRCP "
#define saf78_CLASS_ESRIIN   "ESRIIN "
#define saf78_CLASS_ESRIMPR   "ESRIMPR "
#define saf78_CLASS_ESRJIN   "ESRJIN "
#define saf78_CLASS_ESRJPR   "ESRJPR "
#define saf78_CLASS_ESRLIS   "ESRLIS "
#define saf78_CLASS_ESRPKG   "ESRPKG "
#define saf78_CLASS_ESRRQH   "ESRRQH "
#define saf78_CLASS_ESRSRV   "ESRSRV "
#define saf78_CLASS_ESRSVC   "ESRSVC "
#define saf78_CLASS_ESRXRM   "ESRXRM "
#define saf78_CLASS_MFDSADMN   "MFDSADMN"
#define saf78_CLASS_MFDSREP   "MFDSREP "
#define saf78_ADMIN_ACL   "ACL"
 access control list
#define saf78_ADMIN_ALLOW_ON   "ALLOW"
 allow signon
#define saf78_ADMIN_CLASS   "CLASS"
 resource class
#define saf78_ADMIN_CUST_TXT   "CUSTOM"
 custom text
#define saf78_ADMIN_DEF_GROUP   "DEFGROUP"
 default group
#define saf78_ADMIN_DESCRIPT   "DESC"
 description
#define saf78_ADMIN_DSP_NAME   "NAME"
 display name
#define saf78_ADMIN_EXPIRATION   "EXPIRES"
 expiration date
#define saf78_ADMIN_GROUPNAME   "GROUP"
 group name
#define saf78_ADMIN_GROUPS   "GROUPS"
 group memberships
#define saf78_ADMIN_GRP_PREFIX   "GRPPFX"
 MTO group prefix.
#define saf78_ADMIN_MEMBERS   "MEMBERS"
 group members
#define saf78_ADMIN_OPER_CLASS   "OPCLASS"
 MTO operator class.
#define saf78_ADMIN_OPER_ID   "OPID"
 MTO operator ID.
#define saf78_ADMIN_PASS_CHG   "PASSCHG"
 must change password
#define saf78_ADMIN_PASS_EXP   "PASSEXP"
 password expiration date
#define saf78_ADMIN_PASSWORD   "PASSWORD"
 password
#define saf78_ADMIN_PRIORITY   "PRIORITY"
 MTO priority.
#define saf78_ADMIN_RESNAME   "RESOURCE"
 resource name
#define saf78_ADMIN_TIMEOUT   "TIMEOUT"
 MTO timeout.
#define saf78_ADMIN_TOK_CREATE   "GETTOKEN"
 create passtokens
#define saf78_ADMIN_TOK_USE   "USETOKEN"
 sign on with passtokens
#define saf78_ADMIN_UID   "UID"
 unique ID
#define saf78_ADMIN_USERNAME   "USER"
 username
#define saf78_PERM_EXECUTE   (1<<0)
 Execute (start/stop).
#define saf78_PERM_READ   (1<<1)
 Read object.
#define saf78_PERM_UPDATE   (1<<2)
 Change object.
#define saf78_PERM_ADD   (1<<3)
 Add object.
#define saf78_PERM_DELETE   (1<<4)
 Delete object.
#define saf78_PERM_CONTROL   (1<<5)
 "Control" authority
#define saf78_PERM_ALTER   (1<<6)
 "Alter" authority
#define saf78_UPDATE_ADD   1
#define saf78_UPDATE_MODIFY   2
#define saf78_UPDATE_DELETE   3
#define saf78_UPDATE_OTHER   0
#define saf78_SAF_RC_SUCCESS   0
 request succeeded
#define saf78_RC_NORMAL   0
#define saf78_RS_NORMAL   0
#define saf78_RS_PWRD_CHANGED   4
#define saf78_RC_TOKEN_INFO   4
#define saf78_RS_TOKEN_TOO_LARGE   12
#define saf78_RS_STOKEN_TOO_LARGE   16
#define saf78_SAF_RC_NOT_COMPLETE   4
 no definite response
#define saf78_RC_NO_DECISION   0
 no decision was made
#define saf78_RS_ESM_NOT_CALLED   0
#define saf78_RC_NO_USER_PROFILE   4
#define saf78_RC_SECURITY_NOT_ACTIVE   32
#define saf78_RC_NO_FACILITY_CLASS   88
#define saf78_SAF_RC_FAILURE   8
 request failed
#define saf78_RC_PWRD_INVALID   8
#define saf78_RC_PWRD_EXPIRED   12
#define saf78_RC_PWRD_CHANGE_ERR   16
#define saf78_RC_USER_NOT_IN_GROUP   20
#define saf78_RC_INST_EXIT   24
#define saf78_RC_USER_REVOKED   28
#define saf78_RC_GROUP_REVOKED   36
#define saf78_RC_OID_REQUIRED   40
#define saf78_RC_OID_INVALID   44
#define saf78_RC_PORT_OF_ENTRY_ERR   48
#define saf78_RS_PORT   0
#define saf78_RS_USER_TIME   4
#define saf78_RS_PORT_TIME   8
#define saf78_RC_NOT_AUTH_FOR_APPL   52
#define saf78_RC_SECLABEL_FAIL   56
#define saf78_RS_MLACTIVE_REQUIRES   4
#define saf78_RS_NOT_AUTH_SECLABEL   8
#define saf78_RS_MULTILEVEL_DOM   12
#define saf78_RS_DISJOINT   16
#define saf78_RS_NOT_EQUIVALENT   20
#define saf78_RC_DEFAULT_TOKEN_USED   68
#define saf78_RC_UNPRIV_TRANQUIL   72
#define saf78_RC_NODES_CHECK_FAIL   76
#define saf78_RS_NODE_NOT_ALLOWED   0
#define saf78_RS_USERID_UACC_NONE   4
#define saf78_RS_GROUP_UACC_NONE   8
#define saf78_RS_SECLABEL_UACC_NONE   12
#define saf78_RS_NO_LOCAL_SUBMIT   16
#define saf78_RS_REVERIFY_FAIL   20
#define saf78_RC_SURROGATE_SUB_FAIL   80
#define saf78_RS_SURROGATE_INACTIVE   4
#define saf78_RS_SUB_NOT_PERMITTED   8
#define saf78_RS_JOB_SECLABEL   12
#define saf78_RC_JESJOBS_CHECK_FAIL   84
#define saf78_RC_DATABASE_ERROR   92
#define saf78_RC_CHECK_SUBPARAM   100
#define saf78_RC_TOKEN_REFUSED   104
 passtoken refused
#define saf78_RS_TOKEN_FORMAT   4
 malformed token
#define saf78_RS_TOKEN_EXPIRED   8
 token has expired
#define saf78_RS_TOKEN_TYPE   12
 wrong token type
#define saf78_RS_TOKEN_INVALID   16
 token is invalid
#define saf78_RS_TOKEN_ERROR   20
 error processing token
#define saf78_RC_USER_IS_AUTH   0
#define saf78_RS_RESOURCE_WARN   4
#define saf78_RS_TAPE_VTOC   16
#define saf78_RS_TAPE_CAN_VTOC   32
#define saf78_RS_TAPE_NO_VTOC   36
#define saf78_RC_ACCESS_INFO   20
#define saf78_RS_ACCESS_NONE   0
#define saf78_RS_ACCESS_READ   4
#define saf78_RS_ACCESS_UPDATE   8
#define saf78_RS_ACCESS_CONTROL   12
#define saf78_RS_ACCESS_ALTER   16
#define saf78_RC_RESOURCE_NOT_PROT   4
#define saf78_RS_NO_RESOURCE_PROF   0
#define saf78_RS_STATUS_ERASE   4
#define saf78_RC_USER_NOT_AUTH   8
#define saf78_RS_PROTALL_NO_PROF   0
#define saf78_RS_USER_ERASE   4
#define saf78_RS_USER_TAPEVOL   8
#define saf78_RS_USER_TAPE_DS   12
#define saf78_RS_USER_TAPE_BLP   16
#define saf78_RS_NON_CATALOGED   20
#define saf78_RS_USER_AUTH_TRANQ   24
#define saf78_RS_EXEC_ATTEMPT_READ   28
#define saf78_RS_SECLABEL_NOT_DOM   32
#define saf78_RS_SECLABEL_NEV_DOM   36
#define saf78_RS_USER_NO_SECLABEL   40
#define saf78_RS_COND_ACCESS   44
#define saf78_RC_OLDVOL_ERROR   12
#define saf78_RC_THIRD_PARTY_FAIL   16
#define saf78_RC_NO_CLASS   8
#define saf78_RC_INTERNAL_ERROR   12
#define saf78_RC_PARAM_ERROR   16
#define saf78_RS_EVENT_INVALID   0
#define saf78_RS_QUAL_INVALID   4
#define saf78_RS_BAD_LIST_VER   8
#define saf78_RS_BAD_LIST_LEN   12
#define saf78_RS_ENTITY_INVALID   16
#define saf78_RC_NO_AUDIT_DONE   20
#define saf78_RC_MACT_CINACT   4
#define saf78_RC_MACT_NO_CLASS   8
#define saf78_RC_MINACT_CACT   12
#define saf78_RC_MINACT_CINACT   16
#define saf78_RC_MINACT_NO_CLASS   20
#define saf78_RC_NO_ESM   24
#define saf78_RC_BAD_PARMLIST   28
#define saf78_RS_ESM_DECLINED   4
#define saf78_RC_KEYWORD_ERROR   4
#define saf78_RS_KEYWORD_UNKNOWN   4
#define saf78_RC_VALUE_ERROR   4
#define saf78_RS_VALUE_INVALID   4
#define saf78_RS_VALUE_LENGTH   8
#define saf78_RC_DENIED   8
#define saf78_SAF_RC_PARM_ERROR   12
#define saf78_RC_VERSION   1
#define saf78_RC_REQUEST   2
#define saf78_RC_TYPE   3
#define saf78_RC_MODIFIER   4
#define saf78_RC_FLAG   5
#define saf78_RC_CODESET   6
#define saf78_RC_SAFESM_INDEX   7
#define saf78_RC_USERID   8
#define saf78_RC_PWRD   9
#define saf78_RC_NEWPWRD   10
#define saf78_RC_ENTITY   11
#define saf78_RC_FACILITY   12
#define saf78_RC_TRANSACTION   13
#define saf78_RC_LOGSTR   14
#define saf78_RC_QUERY_NAME   15
#define saf78_RC_NEXT   16
#define saf78_RC_RETURN_AREA   17
#define saf78_RC_ACEE_PTR   18
#define saf78_RC_GROUP   19
#define saf78_RC_CLASS   20
#define saf78_RC_STRING1   21
#define saf78_RC_STRING2   22
#define saf78_RC_PERMISSIONS   23
#define saf78_RC_ARGSTR   24
#define saf78_RC_ARGTBL   25
#define saf78_RC_ARGTBL_KEYPTR   26
#define saf78_RC_ARGTBL_KEYLEN   27
#define saf78_RC_ARGTBL_VALPTR   28
#define saf78_RC_ARGTBL_VALLEN   29
#define saf78_RC_TICKET   30
#define saf78_RC_TOKEN   31
#define saf78_RC_LIST   32
#define saf78_RS_BAD_POINTER   1
#define saf78_RS_BAD_VALUE   2
#define safpb_cur_ver_88   1
#define safpb_verify_req_88   1
#define safpb_auth_req_88   2
#define safpb_audit_req_88   3
#define safpb_stat_req_88   4
#define safpb_verify_create_88   1
#define safpb_verify_destroy_88   2
#define safpb_auth_none_88   0
#define safpb_auth_stat_access_88   1
#define safpb_auth_read_88   2
#define safpb_auth_update_88   4
#define safpb_auth_control_88   8
#define safpb_auth_exec_88   16
#define safpb_auth_alter_88   128
#define safpb_audit_success_88   1
#define safpb_audit_failure_88   2
#define safpb_stat_esm_88   1
#define safpb_stat_class_88   2
#define safpb_mod_CICS_88   1
#define safpb_mod_IMS_88   2
#define safpb_mod_JCL_88   3
#define safpb_mod_ESMAC_88   4
#define safpb_mod_WEB_88   5
#define safpb_mod_BINP_88   6
#define safpb_mod_CGI_88   7
#define safpb_mod_MFDS_88   8
#define safpb_flag_PW_encrypt_88   1
#define safpb_ver_no_password_88   2
#define safpb_flag_api_test_88   64
#define safpb_flag_api_display_88   128
#define safpb_codeset_utf8_88   0
#define safpb_api_ag_ok_88   "\x00\x00\x00"
#define safpb_api_ag_authorized_88   "\x00\x00\x00"
#define safpb_api_ag_not_auth_88   "\x08\x08\x00"
#define safpb_api_ag_pw_changed_88   "\x00\x00\x04"
#define safpb_api_ag_pw_error_88   "\x08\x08\x00"
#define safpb_api_ag_pw_expired_88   "\x08\x0C\x00"
#define safpb_api_ag_pw_upd_error_88   "\x08\x18\x18"
#define safpb_api_ag_id_error_88   "\x08\x04\x00"
#define safpb_api_ag_id_revoked_88   "\x08\x1C\x00"
#define safpb_api_ag_id_g_revoked_88   "\x08\x24\x00"
#define safpb_api_ag_version_err_88   "\x08\x18\x1C"
#define safpb_api_ag_parm_null_88   "\x08\x18\x20"
#define safpb_api_ag_parm_invalid_88   "\x08\x18\x24"
#define safpb_api_ag_parm_unsup_88   "\x08\x18\x28"
#define safpb_api_ag_cl_dont_care_88   "\x08\x18\x2C"
#define safpb_api_ag_rs_dont_care_88   "\x08\x18\x30"
#define safpb_api_ag_not_protect_88   "\x04\x04\x00"
#define safpb_api_ag_esm_error_88   "\x08\x18\x34"
#define safpb_api_ag_access_set_88   "\x00\x14\x00"
#define safpb_api_rc_ok_88   0
#define safpb_api_rc_incomp_88   4
#define safpb_api_rc_failed_88   8
#define safpb_mgr_rc_ok_88   0
#define safpb_mgr_not_protect_88   4
#define safpb_mgr_not_auth_88   8
#define safpb_mgr_access_88   20
#define safpb_mgr_error_88   24
#define safpb_access_not_auth_88   0
#define safpb_access_read_88   4
#define safpb_access_update_88   8
#define safpb_access_control_88   12
#define safpb_access_alter_88   16
#define safpb_auth_jes_DATASET_88   "DATASET"
#define safpb_auth_jes_JESINPUT_88   "JESINPUT"
#define safpb_auth_jes_JESJOBS_88   "JESJOBS"
#define safpb_auth_jes_JESSPOOL_88   "JESSPOOL"
#define safpb_auth_jes_SURROGAT_88   "SURROGAT"
#define safpb_auth_mfd_ESRCP_88   "ESRCP"
#define safpb_auth_mfd_ESRIIN_88   "ESRIIN"
#define safpb_auth_mfd_ESRIMPR_88   "ESRIMPR"
#define safpb_auth_mfd_ESRJIN_88   "ESRJIN"
#define safpb_auth_mfd_ESRJPR_88   "ESRJPR"
#define safpb_auth_mfd_ESRLIS_88   "ESRLIS"
#define safpb_auth_mfd_ESRPKG_88   "ESRPKG"
#define safpb_auth_mfd_ESRRQH_88   "ESRRQH"
#define safpb_auth_mfd_ESRSRV_88   "ESRSRV"
#define safpb_auth_mfd_ESRSVC_88   "ESRSVC"
#define safpb_auth_mfd_ESRXRM_88   "ESRXRM"
#define safpb_auth_mfd_MFDSADMN_88   "MFDSADMN"
#define safpb_auth_mfd_MFDSREP_88   "MFDSREP"

Typedefs

typedef safpb_parameter_block Safpb_Parameter_Block
 ESF "SAFROUTE" API Parameter Block.


Define Documentation

#define safadmin_argtbl   SafAdminArgTbl

Old name for struct SafAdminArgTbl

Definition at line 197 of file safapi.h.

#define Safadmin_Argtbl   SafAdminArgTbl

Old name for type SafAdminArgTbl

Definition at line 199 of file safapi.h.


Typedef Documentation

typedef struct safpb_parameter_block Safpb_Parameter_Block

ESF "SAFROUTE" API Parameter Block.

This parameter block is the sole parameter to most of the ESF API calls: Verify, Auth, etc. The caller creates and initializes the parameter block, then passes its address to the SAFROUTE function.

On input the caller should have set the global fields marked "IN" and "IN/OUT", such as safpb_parameter_block::safpb_version, and those fields in the structure associated with the request type (safpb_parameter_block::VERIFY for a Verify call, and so forth).

For example, in C:

   #include "safapi.h"

   Safpb_Parameter_Block VerifyReq = {0};

   VerifyReq.safpb_version = saf78_VERSION_1;
   VerifyReq.safpb_request = saf78_REQUEST_VERIFY;
   VerifyReq.safpb_type    = saf78_TYPE_ENVIR_CREATE;
   VerifyReq.safpb_codeset = saf78_CODESET_UTF8;

   VerifyReq.REQUESTS.VERIFY.safpb_verify_USERID_len = strlen(UserID);
   VerifyReq.REQUESTS.VERIFY.safpb_verify_PWRD_len   = strlen(Password);
   VerifyReq.REQUESTS.VERIFY.safpb_verify_USERID_ptr = UserID;
   VerifyReq.REQUESTS.VERIFY.safpb_verify_PWRD_ptr   = Password;

   SAFROUTE(&VerifyReq);

On return, the fields marked "OUT" and "IN/OUT" will have been populated by ESF Manager, for a successful call. If an error occurred, some fields may not have been populated.

There are three fields for returning error information:

Various combinations of API return code, manager return code, and reason code are listed in ESF API Return Codes.

If an ESM Module triggered the failure, the safpb_parameter_block::safpb_safesm_index field will be set to the index, starting from 1, of the failing module in the ESM Module list configured for the failing component (ES server or MFDS).