Copyright Digital Equipment Corp. All rights reserved.

QuerySize

NAME
  QuerySize,
  CSSM_QuerySize,
  CSP_QuerySize   - Get size of the output data (CDSA)

SYNOPSIS
  # include <cssm.h>

   API:
       CSSM_RETURN CSSMAPI CSSM_QuerySize
       (CSSM_CC_HANDLE CCHandle,
       CSSM_BOOL Encrypt,
       uint32 QuerySizeCount,
       CSSM_QUERY_SIZE_DATA_PTR DataBlockSizes)
   SPI:
       CSSM_RETURN CSSMCSPI CSP_QuerySize
       (CSSM_CSP_HANDLE CSPHandle,
       CSSM_CC_HANDLE CCHandle,
       const CSSM_CONTEXT *Context,
       CSSM_BOOL Encrypt,
       uint32 QuerySizeCount,
       CSSM_QUERY_SIZE_DATA_PTR DataBlockSizes)

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

API PARAMETERS
  CCHandle (input)
          The handle for an encryption and decryption context.

  Encrypt (input)
          A boolean indicating whether encryption is the operation for
          which the output data size should be calculated. If CSSM_TRUE,
          the operation is encryption. If CSSM_FALSE the operation is
          decryption.

  QuerySizeCount (input)
          The number of entries in the array of DataBlockSizes.

  DataBlockSizes (input/output)
          An array of data block input sizes and corresponding entries
          for the data block output sizes that are returned by this
          function.

SPI PARAMETERS
  CSPHandle (input)
          The handle that describes the add-in cryptographic service
          provider module used to perform calls to CSSM for the memory
          functions managed by CSSM.

  Context (input)
          Pointer to CSSM_CONTEXT structure that describes the attributes
          with this context.

DESCRIPTION
  This function queries for the size of the output data for a
  cryptographic operation. If the context is an encryption or
  decryption context type then the Encrypt parameter will determine
  which operation is being performed. If Encrypt is set to CSSM_TRUE
  then it is an encrypt operation, otherwise it is a decrypt operation.
  For all other context types the Encrypt parameter is ignored. This
  function can also be used to query the output size requirements for
  the intermediate steps of a staged cryptographic operation. There
  may be algorithm-specific and token-specific rules restricting the
  lengths of data following data update calls.

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.

ERRORS
  Errors are described in the CDSA technical standard.  See CDSA.

       CSSMERR_CSP_QUERY_SIZE_UNKNOWN

SEE ALSO
  Books

  Intel CDSA Application Developer's Guide (see CDSA)

  Other Help Topics

  Functions for the CSSM API:

      CSSM_EncryptData
      CSSM_EncryptDataUpdate
      CSSM_DecryptData
      CSSM_DecryptDataUpdate
      CSSM_SignData
      CSSM_VerifyData
      CSSM_DigestData
      CSSM_GenerateMac

  Functions for the CSP SPI:

      CSP_EncryptData
      CSP_EncryptDataUpdate
      CSP_DecryptData
      CSP_DecryptDataUpdate
      CSP_SignData
      CSP_VerifyData
      CSP_DigestData
      CSP_GenerateMac