SecurityFunctionTableA 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_A {
  unsigned long                        dwVersion;
  ENUMERATE_SECURITY_PACKAGES_FN_A     EnumerateSecurityPackagesA;
  QUERY_CREDENTIALS_ATTRIBUTES_FN_A    QueryCredentialsAttributesA;
  ACQUIRE_CREDENTIALS_HANDLE_FN_A      AcquireCredentialsHandleA;
  FREE_CREDENTIALS_HANDLE_FN           FreeCredentialHandle;
  void                                 *Reserved2;
  INITIALIZE_SECURITY_CONTEXT_FN_A     InitializeSecurityContextA;
  ACCEPT_SECURITY_CONTEXT_FN           AcceptSecurityContext;
  COMPLETE_AUTH_TOKEN_FN               CompleteAuthToken;
  DELETE_SECURITY_CONTEXT_FN           DeleteSecurityContext;
  APPLY_CONTROL_TOKEN_FN               ApplyControlToken;
  QUERY_CONTEXT_ATTRIBUTES_FN_A        QueryContextAttributesA;
  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_A     QuerySecurityPackageInfoA;
  void                                 *Reserved3;
  void                                 *Reserved4;
  EXPORT_SECURITY_CONTEXT_FN           ExportSecurityContext;
  IMPORT_SECURITY_CONTEXT_FN_A         ImportSecurityContextA;
  ADD_CREDENTIALS_FN_A                 AddCredentialsA;
  void                                 *Reserved8;
  QUERY_SECURITY_CONTEXT_TOKEN_FN      QuerySecurityContextToken;
  ENCRYPT_MESSAGE_FN                   EncryptMessage;
  DECRYPT_MESSAGE_FN                   DecryptMessage;
  SET_CONTEXT_ATTRIBUTES_FN_A          SetContextAttributesA;
  SET_CREDENTIALS_ATTRIBUTES_FN_A      SetCredentialsAttributesA;
  CHANGE_PASSWORD_FN_A                 ChangeAccountPasswordA;
  void                                 *Reserved9;
  QUERY_CONTEXT_ATTRIBUTES_EX_FN_A     QueryContextAttributesExA;
  QUERY_CREDENTIALS_ATTRIBUTES_EX_FN_A QueryCredentialsAttributesExA;
} SecurityFunctionTableA, *PSecurityFunctionTableA;

Members

dwVersion

Version number of the table.

EnumerateSecurityPackagesA

QueryCredentialsAttributesA

AcquireCredentialsHandleA

FreeCredentialHandle

Reserved2

Reserved for future use.

InitializeSecurityContextA

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.

QueryContextAttributesA

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.

QuerySecurityPackageInfoA

Reserved3

Reserved for future use.

Reserved4

Reserved for future use.

ExportSecurityContext

Pointer to the ExportSecurityContext function.

ImportSecurityContextA

AddCredentialsA

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.

SetContextAttributesA

SetCredentialsAttributesA

ChangeAccountPasswordA

Reserved9

QueryContextAttributesExA

QueryCredentialsAttributesExA

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.

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