HP Open Source Security for OpenVMS Volume 1: Common Data Security Architecture > Elective Module Manager (EMM) API Functions

ModuleManagerAuthenticate

 » Table of Contents

 » Glossary

 » Index

NAME

ModuleManagerAuthenticate — Module manager authentication

SYNOPSIS

# include <cdsa/mds.h>
CSSM_RETURN CSSMAPI ModuleManagerAuthenticate
(CSSM_KEY_HIERARCHY KeyHierarchy,
const CSSM_GUID *CssmGuid,
const CSSM_GUID *AppGuid,
CSSM_MANAGER_REGISTRATION_INFO_PTR FunctionTable)

PARAMETERS

KeyHierarchy (input)
  

The CSSM_KEY_HIERARCHY flag indicating which embedded key(s) CSSM should use when verifying the integrity of the module manager.

CssmGuid (input) 

A CSSM_GUID value identifying the calling CSSM. The elective module manager can use this value to locate the signed manifest credentials for CSSM.

AppGuid (input/optional)
  

A CSSM_GUID value identifying the application who invoked the calling CSSM. The elective module manager can use this value to locate the signed manifest credentials for the application.

FunctionTable (output)
  

A set of function pointers for EMM-defined functions used by CSSM to communicate state changes related to module attach and module detach operations.

DESCRIPTION

This function should perform the elective module manager's half of the bilateral authentication procedure with CSSM. The CssmGuid is used to locate the CSSM's credentials to be verified. The credentials are a zipped, signed manifest.

The KeyHierarchy indicates which public key should be used as the root when checking the integrity of the module manager. The AppGuid is used to locate the application's signed manifest credentials. The elective module manager must check the application's credentials to verify the application's authorization. If no privileges are requested, then the application is not required to provide a GUID nor a set of signed manifest credentials.

Upon successful completion, the elective module manager returns its function table to the calling CSSM. The EMM function table contains the set of EMM entry points that CSSM uses to notify the module manager of significant events such as module attach and module detach requests issued by an application, and event notifications issued by other module managers.

This function symbol must be exported by the elective module manager, so CSSM can invoke this function upon completion of the loading process.

This function is the first module manager interface invoked by CSSM after loading and invoking the main entry point. In particular, the elective module manager's initialize function is invoked by CSSM after this function has successfully completed execution.

RETURN VALUE

A CSSM_RETURN value indicating success or specifying a particular error condition. The value CSSM_OK indicates success. All other values represent an error condition.

SEE ALSO

Books

Intel CDSA Application Developer's Guide