This is the table of function pointers (procedure-pointers in COBOL) to the various service functions that make up the ESM Module API. These are routines that ESM Modules can invoke to perform various functions, such as allocating an ACEE or making an entry in the calling environment's log.
This table will be extended as new functions are defined. The minor version number (SafEsmApi::VerMinor) will be incremented each time a function or functions are added. (The major version number (SafEsmApi::VerMajor) will only change if the structure changes more significantly.) Also, the count field (SafEsmApi::Count) is set to the number of functions defined; ESM Modules can also use this to determine whether more recent additions are present.
The equivalent COBOL definition:
01 ESM-API-table. 03 eapi-version. 05 eapi-major pic x(4) comp-5 value 1. 05 eapi-minor pic x(4) comp-5 value 3. 03 eapi-count pic x(4) comp-5. 03 eapi-Log procedure-pointer. 03 eapi-Get-ACEE procedure-pointer. 03 eapi-Get-Shared-Mem procedure-pointer. 03 eapi-Lock-Enq procedure-pointer. 03 eapi-Lock-Deq procedure-pointer. 03 eapi-Get-ESF-Init procedure-pointer. 03 eapi-Extract-Verify-Strings procedure-pointer. 03 eapi-Extract-Auth-Strings procedure-pointer. 03 eapi-CAS-Message procedure-pointer. 03 eapi-CAS-Service procedure-pointer. 03 eapi-CAS-LockMgr procedure-pointer. 03 eapi-Extract-XAuth-Strings procedure-pointer. 03 eapi-ESF-Query procedure-pointer. 03 eapi-ACEE-Iterate procedure-pointer.
Definition at line 1013 of file saf-esm.h.
Data Fields | |
mf_uns32 | VerMajor |
structure major version, SafESM_API_VER_MAJ (1) | |
mf_uns32 | VerMinor |
structure minor version, SafESM_API_VER_MIN(3) | |
mf_uns32 | Count |
number of functions in the table | |
mf_uns32(* | Log )(mf_uns32 Number, mf_uns32 Level, const char *Text, mf_uns32 Length, void *Reserved) |
mf_uns32(* | GetAcee )(const char *Name, const char *Group, struct SafACEE **AceePtr, mf_uns32 *Info, void *Reserved) |
mf_uns32(* | GetSharedMem )(const char *Name, mf_uns32 *SizePtr, void **MemPtr, void *Reserved) |
mf_uns32(* | LockEnq )(const char *QName, const char *RName, mf_uns32 RNameLen, void *Reserved) |
mf_uns32(* | LockDeq )(const char *QName, const char *RName, mf_uns32 RNameLen, void *Reserved) |
mf_uns32(* | GetSafInit )(struct SafInit **InitPtr, void *Reserved) |
mf_uns32(* | ExtractVerifyStrings )(struct safpb_parameter_block *Request, char *UserBuf, mf_uns32 UserMax, char *PassBuf, mf_uns32 PassMax, char *NPassBuf, mf_uns32 NPassMax, char *GroupBuf, mf_uns32 GroupMax, void *Reserved) |
mf_uns32(* | ExtractAuthStrings )(struct safpb_parameter_block *Request, char *ClassBuf, mf_uns32 ClassMax, char *EntityBuf, mf_uns32 EntityMax, char *FacilityBuf, mf_uns32 FacilityMax, char *TransBuf, mf_uns32 TransMax, void *Reserved) |
int(* | CasMessage )() |
int(* | CasService )() |
int(* | CasLockMgr )() |
mf_uns32(* | ExtractXAuthStrings )(struct safpb_parameter_block *Request, char *ClassBuf, mf_uns32 ClassMax, char *EntityBuf, mf_uns32 EntityMax, char *FacilityBuf, mf_uns32 FacilityMax, char *TransBuf, mf_uns32 TransMax, void *Reserved) |
mf_uns32(* | SafQuery )(mf_uns32 Type, void *Result, mf_uns32 ResSize, void *Reserved) |
mf_uns32(* | ParseConfig )(const char *Text, struct SafStore **Result, void *Reserved) |
mf_uns32(* | QueryConfig )(struct SafStore *Config, const char *Class, const char *Name, char **Value, void *Reserved) |
mf_uns32(* | FreeConfig )(struct SafStore *Config, void *Reserved) |
mf_uns32(* | AceeIterate )(void *Data, int(*Callback)(struct SafACEE *, void *), void *Reserved) |
mf_uns32(* Log)(mf_uns32 Number, mf_uns32 Level, const char *Text, mf_uns32 Length, void *Reserved) |
Log a message with the calling environment. See EsmLog().
Referenced by SafEsmInit().
mf_uns32(* GetAcee)(const char *Name, const char *Group, struct SafACEE **AceePtr, mf_uns32 *Info, void *Reserved) |
Locate an existing ACEE or allocate it if it does not exist. See EsmGetAcee().
Referenced by SafEsmInit().
mf_uns32(* GetSharedMem)(const char *Name, mf_uns32 *SizePtr, void **MemPtr, void *Reserved) |
Locate or allocate a named shared memory area. See EsmGetSharedMem().
Referenced by SafEsmInit().
mf_uns32(* LockEnq)(const char *QName, const char *RName, mf_uns32 RNameLen, void *Reserved) |
Acquire a named lock. See EsmLockEnq().
Referenced by SafEsmInit().
mf_uns32(* LockDeq)(const char *QName, const char *RName, mf_uns32 RNameLen, void *Reserved) |
Release a named lock. See EsmLockDeq().
Referenced by SafEsmInit().
mf_uns32(* GetSafInit)(struct SafInit **InitPtr, void *Reserved) |
Get the ESF initialization block. See EsmGetSafInit().
Referenced by SafEsmInit().
mf_uns32(* ExtractVerifyStrings)(struct safpb_parameter_block *Request, char *UserBuf, mf_uns32 UserMax, char *PassBuf, mf_uns32 PassMax, char *NPassBuf, mf_uns32 NPassMax, char *GroupBuf, mf_uns32 GroupMax, void *Reserved) |
Extract the string data for a verify request. See EsmExtractVerifyStrings().
Referenced by SafEsmInit().
mf_uns32(* ExtractAuthStrings)(struct safpb_parameter_block *Request, char *ClassBuf, mf_uns32 ClassMax, char *EntityBuf, mf_uns32 EntityMax, char *FacilityBuf, mf_uns32 FacilityMax, char *TransBuf, mf_uns32 TransMax, void *Reserved) |
Extract the string data for an auth request. See EsmExtractAuthStrings().
Referenced by SafEsmInit().
int(* CasMessage)() |
Internal use only.
Referenced by SafEsmInit().
int(* CasService)() |
Internal use only
Referenced by SafEsmInit().
int(* CasLockMgr)() |
Internal use only
Referenced by SafEsmInit().
mf_uns32(* ExtractXAuthStrings)(struct safpb_parameter_block *Request, char *ClassBuf, mf_uns32 ClassMax, char *EntityBuf, mf_uns32 EntityMax, char *FacilityBuf, mf_uns32 FacilityMax, char *TransBuf, mf_uns32 TransMax, void *Reserved) |
Extract the string data for an xauth request. See EsmExtractXAuthStrings().
Referenced by SafEsmInit().
mf_uns32(* SafQuery)(mf_uns32 Type, void *Result, mf_uns32 ResSize, void *Reserved) |
Query ESF Manager for various settings and state information. See EsmSafQuery().
Referenced by SafEsmInit().
mf_uns32(* ParseConfig)(const char *Text, struct SafStore **Result, void *Reserved) |
Parse structured text, usually from the ESM Module custom configuration area. See EsmParseConfig().
Referenced by SafEsmInit().
mf_uns32(* QueryConfig)(struct SafStore *Config, const char *Class, const char *Name, char **Value, void *Reserved) |
Query parsed structured text for the value associated with a given name and class. See EsmQueryConfig().
Referenced by SafEsmInit().
mf_uns32(* FreeConfig)(struct SafStore *Config, void *Reserved) |
Free a parsed config. See EsmFreeConfig().
Referenced by SafEsmInit().
mf_uns32(* AceeIterate)(void *Data, int(*Callback)(struct SafACEE *, void *), void *Reserved) |
Iterate over ACEEs. See EsmAceeIterate().
Referenced by SafEsmInit().