Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

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


Feedback

Was this page helpful?

Additional resources