skip book previous and next navigation links
go up to top of book: HP Open Source Security for OpenVMS Volume 1:... HP Open Source Security for OpenVMS Volume 1:...
go to beginning of reference: API FunctionsAPI Functions
go to previous page: CSSM_ListAttachedModuleManagersCSSM_ListAttachedModuleManagers
go to next page: CSSM_ModuleDetachCSSM_ModuleDetach
end of book navigation links


CSSM_ModuleAttach
Library
Description
Errors
 Parameters
Return Value
See Also

NAME

CSSM_ModuleAttach - Attach and verify a service provider module (CDSA)

SYNOPSIS  

# include <cssm.h>

CSSM_RETURN CSSMAPI CSSM_ModuleAttach(const CSSM_GUID *ModuleGuid,const CSSM_VERSION *Version,const CSSM_API_MEMORY_FUNCS *MemoryFuncs,uint32 SubserviceID,CSSM_SERVICE_TYPE SubServiceType,CSSM_ATTACH_FLAGS AttachFlags,CSSM_KEY_HIERARCHY KeyHierarchy,CSSM_FUNC_NAME_ADDR *FunctionTable,uint32 NumFunctionTable,const void *Reserved,CSSM_MODULE_HANDLE_PTR NewModuleHandle)


return to top LIBRARY  

Common Security Services Manager library (cdsa$incssm300_shr.exe)


return to top PARAMETERS  

ModuleGuid (input)
 A pointer to the CSSM_GUID structure containingthe global unique identifier for the CSP module.
Version (input)
 The major and minor version number of CDSA thatthe application is compatible with.
MemoryFuncs (input)
 A structure containing pointers to the memory routines.
SubserviceID (input)
 A SubServiceID identifying aparticular subservice within the module. Subservice IDs can be obtainedfrom MDS or gleaned from insertion events reported through the callback functioninstalled through CSSM_ModuleLoad(). Modules that provide only one service can use zeroas their subservice ID.
SubServiceType (input)
 A service mask describing the type of service thecaller is requesting of the service provider module.
AttachFlags (input)
 A mask representing the caller's request for session-specificservices.
KeyHierarchy (input)
 The CSSM_KEY_HIERARCHY option directing CSSM whatembedded key to use when verifying integrity of the named module.
FunctionTable (input/output/optional)
 A table of function-name and API function-pointerpairs. The caller provides the name of the functions as input. Thecorresponding API function pointers are returned on output. Thefunction table allows dynamic linking of CDSA interfaces, includinginterfaces to Elective Module Managers (EMMs), which are transparentlyloaded by CSSM during CSSM_ModuleAttach().
NumFunctionTable (input)
 The number of entries in the FunctionTable parameter.If no FunctionTable is provided, this value mustbe zero.
Reserved (input)
 This field is reserved for future use. It shouldalways be set to zero
NewModuleHandle (output)
 A new module handle that can be used to interactwith the requested service provider. The value will be set to CSSM_INVALID_HANDLEif the function fails.


return to top DESCRIPTION  

This function attaches the service provider module and verifiesthat the version of the module expected by the application is compatiblewith the version on the system. The module can implement subservices(described in your service provider's documentation). The callercan specify a specific subservice provided by the module.

If the subservice is supported as part of the CSSM frameworkas well as by an EMM, ModuleAttach attaches theService Provider to the CSSM framework. If the subservice is supportedonly by an EMM, ModuleAttach loads the appropriateEMM. The service provider is given an indication of whether it isbeing attached to the CSSM framework or an EMM.

The caller can provide a function table containing functionnames for the desired services. On output each function name ismatched with an API function pointer. The caller can use the pointersto invoke service module operations through CSSM.


return to top RETURN VALUE  

A CSSM_RETURN value indicating success or specifying a particularerror condition. The value CSSM_OK indicates success. All othervalues represent an error condition.


return to top ERRORS  

Errors are described in the CDSA Technical Standard.
CSSMERR_CSSM_INVALID_ADDIN_FUNCTION_TABLECSSMERR_CSSM_EMM_AUTHENTICATE_FAILEDCSSMERR_CSSM_ADDIN_AUTHENTICATE_FAILEDCSSMERR_CSSM_INVALID_SERVICE_MASKCSSMERR_CSSM_MODULE_NOT_LOADEDCSSMERR_CSSM_INVALID_SUBSERVICEIDCSSMERR_CSSM_INVALID_KEY_HIERARCHYCSSMERR_CSSM_INVALID_GUID


return to top SEE ALSO  

Books

Intel CDSA Application Developer's Guide

Online Help

Functions: CSSM_ModuleDetach


go to previous page: CSSM_ListAttachedModuleManagersCSSM_ListAttachedModuleManagers
go to next page: CSSM_ModuleDetachCSSM_ModuleDetach