SafEsmApi Struct Reference


Detailed Description

ESM Module API Procedure Table.

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)


Field Documentation

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().


The documentation for this struct was generated from the following file: