SecurityFunctionTableW structure (sspi.h)

The SecurityFunctionTable structure is a dispatch table that contains pointers to the functions defined in SSPI.

Syntax

typedef struct _SECURITY_FUNCTION_TABLE_W {
  unsigned long                        dwVersion;
  ENUMERATE_SECURITY_PACKAGES_FN_W     EnumerateSecurityPackagesW;
  QUERY_CREDENTIALS_ATTRIBUTES_FN_W    QueryCredentialsAttributesW;
  ACQUIRE_CREDENTIALS_HANDLE_FN_W      AcquireCredentialsHandleW;
  FREE_CREDENTIALS_HANDLE_FN           FreeCredentialsHandle;
  void                                 *Reserved2;
  INITIALIZE_SECURITY_CONTEXT_FN_W     InitializeSecurityContextW;
  ACCEPT_SECURITY_CONTEXT_FN           AcceptSecurityContext;
  COMPLETE_AUTH_TOKEN_FN               CompleteAuthToken;
  DELETE_SECURITY_CONTEXT_FN           DeleteSecurityContext;
  APPLY_CONTROL_TOKEN_FN               ApplyControlToken;
  QUERY_CONTEXT_ATTRIBUTES_FN_W        QueryContextAttributesW;
  IMPERSONATE_SECURITY_CONTEXT_FN      ImpersonateSecurityContext;
  REVERT_SECURITY_CONTEXT_FN           RevertSecurityContext;
  MAKE_SIGNATURE_FN                    MakeSignature;
  VERIFY_SIGNATURE_FN                  VerifySignature;
  FREE_CONTEXT_BUFFER_FN               FreeContextBuffer;
  QUERY_SECURITY_PACKAGE_INFO_FN_W     QuerySecurityPackageInfoW;
  void                                 *Reserved3;
  void                                 *Reserved4;
  EXPORT_SECURITY_CONTEXT_FN           ExportSecurityContext;
  IMPORT_SECURITY_CONTEXT_FN_W         ImportSecurityContextW;
  ADD_CREDENTIALS_FN_W                 AddCredentialsW;
  void                                 *Reserved8;
  QUERY_SECURITY_CONTEXT_TOKEN_FN      QuerySecurityContextToken;
  ENCRYPT_MESSAGE_FN                   EncryptMessage;
  DECRYPT_MESSAGE_FN                   DecryptMessage;
  SET_CONTEXT_ATTRIBUTES_FN_W          SetContextAttributesW;
  SET_CREDENTIALS_ATTRIBUTES_FN_W      SetCredentialsAttributesW;
  CHANGE_PASSWORD_FN_W                 ChangeAccountPasswordW;
  void                                 *Reserved9;
  QUERY_CONTEXT_ATTRIBUTES_EX_FN_W     QueryContextAttributesExW;
  QUERY_CREDENTIALS_ATTRIBUTES_EX_FN_W QueryCredentialsAttributesExW;
} SecurityFunctionTableW, *PSecurityFunctionTableW;

Members

dwVersion

Version number of the table.

EnumerateSecurityPackagesW

QueryCredentialsAttributesW

AcquireCredentialsHandleW

FreeCredentialsHandle

Pointer to the FreeCredentialsHandle function.

Reserved2

Reserved for future use.

InitializeSecurityContextW

AcceptSecurityContext

Pointer to the AcceptSecurityContext (General) function.

CompleteAuthToken

Pointer to the CompleteAuthToken function.

DeleteSecurityContext

Pointer to the DeleteSecurityContext function.

ApplyControlToken

Pointer to the ApplyControlToken function.

QueryContextAttributesW

ImpersonateSecurityContext

Pointer to the ImpersonateSecurityContext function.

RevertSecurityContext

Pointer to the RevertSecurityContext function.

MakeSignature

Pointer to the MakeSignature function.

VerifySignature

Pointer to the VerifySignature function.

FreeContextBuffer

Pointer to the FreeContextBuffer function.

QuerySecurityPackageInfoW

Reserved3

Reserved for future use.

Reserved4

Reserved for future use.

ExportSecurityContext

Pointer to the ExportSecurityContext function.

ImportSecurityContextW

AddCredentialsW

Reserved8

Reserved for future use.

QuerySecurityContextToken

Pointer to the QuerySecurityContextToken function.

EncryptMessage

Pointer to the EncryptMessage (General) function.

DecryptMessage

Pointer to the DecryptMessage (General) function.

SetContextAttributesW

SetCredentialsAttributesW

ChangeAccountPasswordW

Reserved9

QueryContextAttributesExW

QueryCredentialsAttributesExW

Remarks

Note

The sspi.h header defines SecurityFunctionTable as an alias that automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that is not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.

QueryContextAttributesExW and QueryCredentialsAttributesW are not initialized.

Requirements

Requirement Value
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Header sspi.h (include Security.h)

See also

InitSecurityInterface