/*----------------------------------------------------------------------- * File: MAF_CONFIG.H * * Copyright (c) 1995-2000 Intel Corporation. All rights reserved. *----------------------------------------------------------------------- */ #ifndef MAF_CONFIG_H #define MAF_CONFIG_H #ifndef MAF_CSM_INCLUDED #define MAF_CSM_INCLUDED #endif #include "csm_sesn.h" #include "csm_keymgr.h" #define NO_MODULE_STRING_NAMES #include "guids.h" /* GUID of the addin module */ #define ADDIN_GUID_INITIALIZER intel_stub_csp_guid_init /* Module name of the service provider */ #ifdef VMS #define ADDIN_NAME "stubcsp300" #define ADDIN_PRINT_NAME "StubCSP300" #define ADDIN_VENDOR_NAME "Hewlett-Packard Company" #define ADDIN_STANDARD_DESCRIPTION "StubCSP300" #define ADDIN_STANDARD_VERSION_MAJOR 0 #define ADDIN_STANDARD_VERSION_MINOR 0 #define ADDIN_PRODUCT_DESCRIPTION ADDIN_STANDARD_DESCRIPTION #define ADDIN_PRODUCT_VERSION_MAJOR ADDIN_STANDARD_VERSION_MAJOR #define ADDIN_PRODUCT_VERSION_MINOR ADDIN_STANDARD_VERSION_MINOR #else #define ADDIN_NAME "stubcsp300.dll" #define ADDIN_PRINT_NAME "CSP Name Here" #define ADDIN_VENDOR_NAME "Your Name Here" #define ADDIN_STANDARD_DESCRIPTION "Standard Name Here" #define ADDIN_STANDARD_VERSION_MAJOR 0 #define ADDIN_STANDARD_VERSION_MINOR 0 #define ADDIN_PRODUCT_DESCRIPTION ADDIN_STANDARD_DESCRIPTION #define ADDIN_PRODUCT_VERSION_MAJOR ADDIN_STANDARD_VERSION_MAJOR #define ADDIN_PRODUCT_VERSION_MINOR ADDIN_STANDARD_VERSION_MINOR #endif /* VMS */ /* Version of the CSSM is compatible with this module */ #define ADDIN_VERSION_MAJOR CSSM_MAJOR #define ADDIN_VERSION_MINOR CSSM_MINOR /* Name of the manifest section used to verify the module */ #ifdef VMS #define ADDIN_SELF_CHECK_SECTION "cdsa$stubcsp300_shr" #else #define ADDIN_SELF_CHECK_SECTION "stubcsp300" #endif /* Is the addin module thread safe? */ #define ADDIN_THREAD_SAFE 1 /* Does the addin module require the writer lock durring SPI functions on the load tracker node (is this node being modified?) */ #define ADDIN_NEED_LOAD_WRITER_LOCK 0 /* Does the addin module require the writer lock durring SPI functions on the attach tracker node (is this node being modified?) */ #define ADDIN_NEED_ATTACH_WRITER_LOCK 0 /* Does the addin module require the custom ADDIN_LOAD_DATA structure (see below) */ #define ADDIN_NEED_ADDIN_LOAD_STRUCT 1 /* Does the addin module require the custom ADDIN_ATTACH_DATA structure (see below) */ #define ADDIN_NEED_ADDIN_ATTACH_STRUCT 1 /* Macro used to define if a subservice pair (id, type) is valid for an addin */ #define ADDIN_CSP_SUBSERVICE_ID 0 #define ADDIN_IS_VALID_SUBSERVICE(SubServiceId, SubServiceType) \ ( ( (SubServiceId) == ADDIN_CSP_SUBSERVICE_ID) && \ ( (SubServiceType) == CSSM_SERVICE_CSP ) ) #if (ADDIN_NEED_ADDIN_LOAD_STRUCT) /*----------------------------------------------------------------------------- * Description: * Structure containing custom fields in the CSSM_MODULE_LOAD_TRACKER structure *---------------------------------------------------------------------------*/ struct addin_load_data { /* Contains the handle to the private key file for this load */ CSM_KM_HANDLE hKeyFile; }; typedef struct addin_load_data ADDIN_LOAD_DATA; #endif /* if ADDIN_NEED_ADDIN_LOAD_STRUCT */ #if (ADDIN_NEED_ADDIN_ATTACH_STRUCT) /*----------------------------------------------------------------------------- * Description: * Structure containing custom fields in the CSSM_MODULE_ATTACH_TRACKER structure *---------------------------------------------------------------------------*/ struct addin_attach_data { /* Maintains a list of CSP "sessions" in this attach. It does not * require the attach record to be locked since it has internal * locking machanisms. If the record is not locked, then this * value will have to be casted to (CSM_SESSION_LIST*) to remove * the 'const' declaration of the value returned by * Addin_GetAttachData when ADDIN_NEED_ATTACH_WRITER_LOCK==0. */ CSM_SESSION_LIST slSessions; }; typedef struct addin_attach_data ADDIN_ATTACH_DATA; #endif /* if ADDIN_NEED_ADDIN_ATTACH_STRUCT */ #endif