Copyright Digital Equipment Corp. All rights reserved.

ModuleManagerAuthenticate

NAME
  ModuleManagerAuthenticate - Module manager authentication (CDSA)

SYNOPSIS
  # include <mds.h>

       CSSM_RETURN CSSMAPI ModuleManagerAuthenticate
       (CSSM_KEY_HIERARCHY KeyHierarchy,
       const CSSM_GUID *CssmGuid,
       const CSSM_GUID *AppGuid,
       CSSM_MANAGER_REGISTRATION_INFO_PTR FunctionTable)

LIBRARY
  Common Security Services Manager library (CDSA$INCSSM300_SHR.EXE)

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 (see CDSA)

  Other Help Topics