SafPTab Struct Reference


Detailed Description

ESM Module Procedure Table.

All ESM Modules export a default entry point, which is invoked when the module is loaded. (Note that it may be called more than once, so if it needs to do any one-time initialization, it will have to handle that itself.) This entry point is invoked with no parameters. It returns a table of function pointers (procedure pointers in COBOL), defined here. The ESM Interface will use these pointers for subsequent calls.

The table has a version, which is currently 1.

The equivalent COBOL definition:

01  ESM-procedure-table.
   03  esm-version                      pic x(4) comp-5 value 1.
   03  esm-Init                         procedure-pointer.
   03  esm-Info                         procedure-pointer.
   03  esm-Verify                       procedure-pointer.
   03  esm-Auth                         procedure-pointer.
   03  esm-XAuth                        procedure-pointer.
   03  esm-Update                       procedure-pointer.
   03  esm-Status                       procedure-pointer.
   03  esm-Control                      procedure-pointer.
   03  esm-Exit                         procedure-pointer.
   03  esm-Admin                        procedure-pointer.
   03  esm-Reserved                     procedure-pointer value null.

Definition at line 1150 of file saf-esm.h.

Data Fields

mf_uns32 Version
 ESM procedure table version, SafESM_PT_VER (1).
mf_uns32(* Init )(const mf_uns32 *Index, struct cas_esm_config_internal *Config, const struct SafEsmApi *Api, void *Reserved)
mf_uns32(* Info )(const char **Name, mf_uns32 *IFVersion, const unsigned char **Signature, void *Reserved)
mf_uns32(* Verify )(struct safpb_parameter_block *Request, void *Reserved)
mf_uns32(* Auth )(struct safpb_parameter_block *Request, void *Reserved)
mf_uns32(* XAuth )(struct safpb_parameter_block *Request, void *Reserved)
mf_uns32(* Update )(mf_s32 Type, struct safpb_parameter_block *Request, void *Reserved)
mf_uns32(* Status )()
mf_uns32(* Control )()
mf_uns32(* Exit )(const mf_uns32 *Index, void *Reserved)
mf_uns32(* Admin )(struct safpb_parameter_block *Request, void *Reserved)
mf_uns32(* Reserved )()


Field Documentation

mf_uns32(* Init)(const mf_uns32 *Index, struct cas_esm_config_internal *Config, const struct SafEsmApi *Api, void *Reserved)

Initialize and configure the ESM Module. Typically a module will use this function to connect to its ESM.

mf_uns32(* Info)(const char **Name, mf_uns32 *IFVersion, const unsigned char **Signature, void *Reserved)

Provide a documentation string and interface version information.

mf_uns32(* Verify)(struct safpb_parameter_block *Request, void *Reserved)

Respond to an ESF VERIFY request.

mf_uns32(* Auth)(struct safpb_parameter_block *Request, void *Reserved)

Respond to an ESF AUTH request.

mf_uns32(* XAuth)(struct safpb_parameter_block *Request, void *Reserved)

Respond to an ESF XAUTH request.

mf_uns32(* Update)(mf_s32 Type, struct safpb_parameter_block *Request, void *Reserved)

Callback to notify an ESM Module of an external security update event.

mf_uns32(* Status)()

Get status of ESM Module and associated ESM.

mf_uns32(* Control)()

Callback to notify an ESM Module of an administrative control event. Control events include being enabled or disabled, for example. This procedure may also be used to request a change in the ESM Module's behavior.

mf_uns32(* Exit)(const mf_uns32 *Index, void *Reserved)

Notify an ESM Module that the host environment is exiting.

mf_uns32(* Admin)(struct safpb_parameter_block *Request, void *Reserved)

Respond to an ESF ADMIN request.

mf_uns32(* Reserved)()

A placeholder for future expansion.


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