CRYPT_SMIME_CAPABILITY structure (wincrypt.h)

The CRYPT_SMIME_CAPABILITY structure specifies a single capability and its associated parameters. Single capabilities are grouped together into a list of CRYPT_SMIME_CAPABILITIES which can specify a prioritized list of capability preferences.

Note  The CRYPT_SMIME_CAPABILITIES is part of an Internet draft proposal. For a complete definition, see "draft-dusse-s/mime-cert-01.txt" dated May 5, 1997.
 

Syntax

typedef struct _CRYPT_SMIME_CAPABILITY {
  LPSTR            pszObjId;
  CRYPT_OBJID_BLOB Parameters;
} CRYPT_SMIME_CAPABILITY, *PCRYPT_SMIME_CAPABILITY;

Members

pszObjId

Object identifier (OID) for a capability. Capabilities include signature algorithms, symmetric algorithms, and key enciphering algorithms. Also included are non-algorithm capabilities, which are the preference for signed data and the preference for unencrypted messages.

Parameters

A CRYPT_OBJID_BLOB structure that contains any parameters associated with the specified capability in pszObjId.

Note  For CryptEncodeObject and CryptEncodeObjectEx with the dwCertEncodingType set to X509_ASN_ENCODING, if the cbData member of the Parameters member is zero, the encoded parameters are omitted. They are not encoded as a NULL (05 00) as is done when encoding a CRYPT_ALGORITHM_IDENTIFIER. This follows the Secure/Multipurpose Internet Mail Extensions (S/MIME) specification for encoding capabilities that requires this omission.
 

Requirements

Requirement Value
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Header wincrypt.h

See also

CRYPT_SMIME_CAPABILITIES