The BCryptSetProperty function sets the value of a named property for a CNG object.
NTSTATUS BCryptSetProperty(
BCRYPT_HANDLE hObject,
LPCWSTR pszProperty,
PUCHAR pbInput,
ULONG cbInput,
ULONG dwFlags
)
hObject
Type: BCRYPT_HANDLE
[in, out] A handle that represents the CNG object to set the property value for.
pszProperty
Type: LPCWSTR
[in] A pointer to a null-terminated Unicode string that contains the name of the property to set. This can be one of the predefined Cryptography Primitive Property Identifiers or a custom property identifier.
pbInput
Type: PUCHAR
[in] The address of a buffer that contains the new property value. The cbInput parameter contains the size of this buffer.
cbInput
Type: ULONG
[in] The size, in bytes, of the pbInput buffer.
dwFlags
Type: ULONG
[in] A set of flags that modify the behavior of this function. No flags are defined for this function.
Type: NTSTATUS
Returns a status code that indicates the success or failure of the function.
Possible return codes include, but are not limited to, the following.
| Return code | Description |
|---|---|
| STATUS_SUCCESS | The function was successful. |
| STATUS_INVALID_HANDLE | The handle in the hObject parameter is not valid. |
| STATUS_INVALID_PARAMETER | One or more parameters are not valid. |
| STATUS_NOT_SUPPORTED | The named property specified by the pszProperty parameter is not supported or is read-only. |
Depending on what processor modes a provider supports, BCryptSetProperty can be called either from user mode or kernel mode. Kernel mode callers can execute either at PASSIVE_LEVELIRQL or DISPATCH_LEVEL IRQL. If the current IRQL level is DISPATCH_LEVEL, any pointers passed to BCryptSetProperty must refer to nonpaged (or locked) memory. If the object specified in the hObject parameter is a handle, it must have been opened by using the BCRYPT_PROV_DISPATCH flag.
Header: Declared in bcrypt.h.
Library: Use bcrypt.lib.