KspMakeSignatureFn callback function (ntsecpkg.h)

The SpMakeSignature function generates a signature based on the specified message and security context.

The SpMakeSignature function is the dispatch function for the MakeSignature function of the Security Support Provider Interface.

Syntax

KspMakeSignatureFn Kspmakesignaturefn;

NTSTATUS Kspmakesignaturefn(
  [in] LSA_SEC_HANDLE ContextId,
  [in] ULONG fQOP,
  [in] PSecBufferDesc Message,
  [in] ULONG MessageSeqNo
)
{...}

Parameters

[in] ContextId

A handle to the security context to be used to generate the message signature.

[in] fQOP

Specifies package-specific flags that indicate the quality of protection. A security package can use this parameter to support the selection of cryptographic algorithms

[in] Message

Pointer to a SecBuffer structure. On input, the structure contains the message to be signed.

[in] MessageSeqNo

Sequence number to assign to the message. Sequence numbers are optional and are used as protection against loss and insertion of messages. A value of zero indicates that sequence numbers are not in use.

Return value

If the function succeeds, return STATUS_SUCCESS.

If the function fails, return an NTSTATUS code that indicates the reason it failed. The following lists a common reason for failure and the error code that the function should return.

Return code Description
SEC_E_INVALID_HANDLE
The handle is not valid.

Remarks

The counterpart to the SpMakeSignature function is the SpVerifySignature function, used to verify signatures at the receiving end.

SSP/APs must implement the SpMakeSignature function; however, the actual name given to the implementation is up to the developer.

A pointer to the SpMakeSignature function is available in the SECPKG_USER_FUNCTION_TABLE structure received from the SpUserModeInitialize function.

Requirements

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

See also

MakeSignature

SECPKG_USER_FUNCTION_TABLE

SpUserModeInitialize

SpVerifySignature