18 #ifndef __WINE_SSPI_H__ 19 #define __WINE_SSPI_H__ 27 #define SEC_ENTRY WINAPI 32 #ifndef __SECSTATUS_DEFINED__ 33 #define __SECSTATUS_DEFINED__ 37 #define UNISP_NAME_A "Microsoft Unified Security Protocol Provider" 38 #define UNISP_NAME_W L"Microsoft Unified Security Protocol Provider" 39 #define UNISP_NAME WINELIB_NAME_AW(UNISP_NAME_) 49 #ifndef __SECHANDLE_DEFINED__ 50 #define __SECHANDLE_DEFINED__ 58 #define SecInvalidateHandle(x) do { \ 59 ((PSecHandle)(x))->dwLower = ((ULONG_PTR)((INT_PTR)-1)); \ 60 ((PSecHandle)(x))->dwUpper = ((ULONG_PTR)((INT_PTR)-1)); \ 63 #define SecIsValidHandle(x) \ 64 ((((PSecHandle)(x))->dwLower != ((ULONG_PTR)(INT_PTR)-1)) && \ 65 (((PSecHandle)(x))->dwUpper != ((ULONG_PTR)(INT_PTR)-1))) 93 #define SSPIPFC_CREDPROV_DO_NOT_SAVE 0x00000001 94 #define SSPIPFC_NO_CHECKBOX 0x00000002 122 #define SecPkgInfo WINELIB_NAME_AW(SecPkgInfo) 123 #define PSecPkgInfo WINELIB_NAME_AW(PSecPkgInfo) 126 #define SECPKG_FLAG_INTEGRITY 0x00000001 127 #define SECPKG_FLAG_PRIVACY 0x00000002 128 #define SECPKG_FLAG_TOKEN_ONLY 0x00000004 129 #define SECPKG_FLAG_DATAGRAM 0x00000008 130 #define SECPKG_FLAG_CONNECTION 0x00000010 131 #define SECPKG_FLAG_MULTI_REQUIRED 0x00000020 132 #define SECPKG_FLAG_CLIENT_ONLY 0x00000040 133 #define SECPKG_FLAG_EXTENDED_ERROR 0x00000080 134 #define SECPKG_FLAG_IMPERSONATION 0x00000100 135 #define SECPKG_FLAG_ACCEPT_WIN32_NAME 0x00000200 136 #define SECPKG_FLAG_STREAM 0x00000400 137 #define SECPKG_FLAG_NEGOTIABLE 0x00000800 138 #define SECPKG_FLAG_GSS_COMPATIBLE 0x00001000 139 #define SECPKG_FLAG_LOGON 0x00002000 140 #define SECPKG_FLAG_ASCII_BUFFERS 0x00004000 141 #define SECPKG_FLAG_FRAGMENT 0x00008000 142 #define SECPKG_FLAG_MUTUAL_AUTH 0x00010000 143 #define SECPKG_FLAG_DELEGATION 0x00020000 144 #define SECPKG_FLAG_READONLY_WITH_CHECKSUM 0x00040000 145 #define SECPKG_FLAG_RESTRICTED_TOKENS 0x00080000 146 #define SECPKG_FLAG_NEGO_EXTENDER 0x00100000 147 #define SECPKG_FLAG_NEGOTIABLE2 0x00200000 148 #define SECPKG_FLAG_APPCONTAINER_PASSTHROUGH 0x00400000 149 #define SECPKG_FLAG_APPCONTAINER_CHECKS 0x00800000 150 #define SECPKG_FLAG_APPLY_LOOPBACK 0x02000000 159 #define SECBUFFER_EMPTY 0 160 #define SECBUFFER_DATA 1 161 #define SECBUFFER_TOKEN 2 162 #define SECBUFFER_PKG_PARAMS 3 163 #define SECBUFFER_MISSING 4 164 #define SECBUFFER_EXTRA 5 165 #define SECBUFFER_STREAM_TRAILER 6 166 #define SECBUFFER_STREAM_HEADER 7 167 #define SECBUFFER_NEGOTIATION_INFO 8 168 #define SECBUFFER_PADDING 9 169 #define SECBUFFER_STREAM 10 170 #define SECBUFFER_MECHLIST 11 171 #define SECBUFFER_MECHLIST_SIGNATURE 12 172 #define SECBUFFER_TARGET 13 173 #define SECBUFFER_CHANNEL_BINDINGS 14 175 #define SECBUFFER_ATTRMASK 0xf0000000 176 #define SECBUFFER_READONLY 0x80000000 177 #define SECBUFFER_READONLY_WITH_CHECKSUM 0x10000000 178 #define SECBUFFER_RESERVED 0x60000000 187 #define SECBUFFER_VERSION 0 204 #define EnumerateSecurityPackages WINELIB_NAME_AW(EnumerateSecurityPackages) 210 #define ENUMERATE_SECURITY_PACKAGES_FN WINELIB_NAME_AW(ENUMERATE_SECURITY_PACKAGES_FN_) 226 #define QueryCredentialsAttributes WINELIB_NAME_AW(QueryCredentialsAttributes) 232 #define QUERY_CREDENTIALS_ATTRIBUTES_FN WINELIB_NAME_AW(QUERY_CREDENTIALS_ATTRIBUTES_FN_) 246 #define SECPKG_CRED_ATTR_NAMES 1 259 #define SecPkgCredentials_Names WINELIB_NAME_AW(SecPkgCredentials_Names) 287 #define AcquireCredentialsHandle WINELIB_NAME_AW(AcquireCredentialsHandle) 290 #define SECPKG_CRED_INBOUND 0x00000001 291 #define SECPKG_CRED_OUTBOUND 0x00000002 292 #define SECPKG_CRED_BOTH (SECPKG_CRED_INBOUND | SECPKG_CRED_OUTBOUND) 293 #define SECPKG_CRED_DEFAULT 0x00000004 294 #define SECPKG_CRED_RESERVED 0xf0000000 302 #define ACQUIRE_CREDENTIALS_HANDLE_FN WINELIB_NAME_AW(ACQUIRE_CREDENTIALS_HANDLE_FN_) 313 #define FreeCredentialHandle FreeCredentialsHandle 349 #define InitializeSecurityContext WINELIB_NAME_AW(InitializeSecurityContext) 359 #define INITIALIZE_SECURITY_CONTEXT_FN WINELIB_NAME_AW(INITIALIZE_SECURITY_CONTEXT_FN_) 362 #define ISC_REQ_DELEGATE 0x00000001 363 #define ISC_REQ_MUTUAL_AUTH 0x00000002 364 #define ISC_REQ_REPLAY_DETECT 0x00000004 365 #define ISC_REQ_SEQUENCE_DETECT 0x00000008 366 #define ISC_REQ_CONFIDENTIALITY 0x00000010 367 #define ISC_REQ_USE_SESSION_KEY 0x00000020 368 #define ISC_REQ_PROMPT_FOR_CREDS 0x00000040 369 #define ISC_REQ_USE_SUPPLIED_CREDS 0x00000080 370 #define ISC_REQ_ALLOCATE_MEMORY 0x00000100 371 #define ISC_REQ_USE_DCE_STYLE 0x00000200 372 #define ISC_REQ_DATAGRAM 0x00000400 373 #define ISC_REQ_CONNECTION 0x00000800 374 #define ISC_REQ_CALL_LEVEL 0x00001000 375 #define ISC_REQ_FRAGMENT_SUPPLIED 0x00002000 376 #define ISC_REQ_EXTENDED_ERROR 0x00004000 377 #define ISC_REQ_STREAM 0x00008000 378 #define ISC_REQ_INTEGRITY 0x00010000 379 #define ISC_REQ_IDENTIFY 0x00020000 380 #define ISC_REQ_NULL_SESSION 0x00040000 381 #define ISC_REQ_MANUAL_CRED_VALIDATION 0x00080000 382 #define ISC_REQ_RESERVED1 0x00100000 383 #define ISC_REQ_FRAGMENT_TO_FIT 0x00200000 385 #define ISC_RET_DELEGATE 0x00000001 386 #define ISC_RET_MUTUAL_AUTH 0x00000002 387 #define ISC_RET_REPLAY_DETECT 0x00000004 388 #define ISC_RET_SEQUENCE_DETECT 0x00000008 389 #define ISC_RET_CONFIDENTIALITY 0x00000010 390 #define ISC_RET_USE_SESSION_KEY 0x00000020 391 #define ISC_RET_USED_COLLECTED_CREDS 0x00000040 392 #define ISC_RET_USED_SUPPLIED_CREDS 0x00000080 393 #define ISC_RET_ALLOCATED_MEMORY 0x00000100 394 #define ISC_RET_USED_DCE_STYLE 0x00000200 395 #define ISC_RET_DATAGRAM 0x00000400 396 #define ISC_RET_CONNECTION 0x00000800 397 #define ISC_RET_INTERMEDIATE_RETURN 0x00001000 398 #define ISC_RET_CALL_LEVEL 0x00002000 399 #define ISC_RET_EXTENDED_ERROR 0x00004000 400 #define ISC_RET_STREAM 0x00008000 401 #define ISC_RET_INTEGRITY 0x00010000 402 #define ISC_RET_IDENTIFY 0x00020000 403 #define ISC_RET_NULL_SESSION 0x00040000 404 #define ISC_RET_MANUAL_CRED_VALIDATION 0x00080000 405 #define ISC_RET_RESERVED1 0x00100000 406 #define ISC_RET_FRAGMENT_ONLY 0x00200000 426 #define ASC_REQ_DELEGATE 0x00000001 427 #define ASC_REQ_MUTUAL_AUTH 0x00000002 428 #define ASC_REQ_REPLAY_DETECT 0x00000004 429 #define ASC_REQ_SEQUENCE_DETECT 0x00000008 430 #define ASC_REQ_CONFIDENTIALITY 0x00000010 431 #define ASC_REQ_USE_SESSION_KEY 0x00000020 432 #define ASC_REQ_ALLOCATE_MEMORY 0x00000100 433 #define ASC_REQ_USE_DCE_STYLE 0x00000200 434 #define ASC_REQ_DATAGRAM 0x00000400 435 #define ASC_REQ_CONNECTION 0x00000800 436 #define ASC_REQ_CALL_LEVEL 0x00001000 437 #define ASC_REQ_FRAGMENT_SUPPLIED 0x00002000 438 #define ASC_REQ_EXTENDED_ERROR 0x00008000 439 #define ASC_REQ_STREAM 0x00010000 440 #define ASC_REQ_INTEGRITY 0x00020000 441 #define ASC_REQ_LICENSING 0x00040000 442 #define ASC_REQ_IDENTIFY 0x00080000 443 #define ASC_REQ_ALLOW_NULL_SESSION 0x00100000 444 #define ASC_REQ_ALLOW_NON_USER_LOGONS 0x00200000 445 #define ASC_REQ_ALLOW_CONTEXT_REPLAY 0x00400000 446 #define ASC_REQ_FRAGMENT_TO_FIT 0x00800000 447 #define ASC_REQ_FRAGMENT_NO_TOKEN 0x01000000 449 #define ASC_RET_DELEGATE 0x00000001 450 #define ASC_RET_MUTUAL_AUTH 0x00000002 451 #define ASC_RET_REPLAY_DETECT 0x00000004 452 #define ASC_RET_SEQUENCE_DETECT 0x00000008 453 #define ASC_RET_CONFIDENTIALITY 0x00000010 454 #define ASC_RET_USE_SESSION_KEY 0x00000020 455 #define ASC_RET_ALLOCATED_MEMORY 0x00000100 456 #define ASC_RET_USED_DCE_STYLE 0x00000200 457 #define ASC_RET_DATAGRAM 0x00000400 458 #define ASC_RET_CONNECTION 0x00000800 459 #define ASC_RET_CALL_LEVEL 0x00002000 460 #define ASC_RET_THIRD_LEG_FAILED 0x00004000 461 #define ASC_RET_EXTENDED_ERROR 0x00008000 462 #define ASC_RET_STREAM 0x00010000 463 #define ASC_RET_INTEGRITY 0x00020000 464 #define ASC_RET_LICENSING 0x00040000 465 #define ASC_RET_IDENTIFY 0x00080000 466 #define ASC_RET_NULL_SESSION 0x00100000 467 #define ASC_RET_ALLOW_NON_USER_LOGONS 0x00200000 468 #define ASC_RET_ALLOW_CONTEXT_REPLAY 0x00400000 469 #define ASC_RET_FRAGMENT_ONLY 0x00800000 470 #define ASC_RET_NO_TOKEN 0x01000000 473 #define SECURITY_NATIVE_DREP 0x00000010 474 #define SECURITY_NETWORK_DREP 0x00000000 512 #define QueryContextAttributes WINELIB_NAME_AW(QueryContextAttributes) 518 #define QUERY_CONTEXT_ATTRIBUTES_FN WINELIB_NAME_AW(QUERY_CONTEXT_ATTRIBUTES_FN_) 521 #define SECPKG_ATTR_SIZES 0 522 #define SECPKG_ATTR_NAMES 1 523 #define SECPKG_ATTR_LIFESPAN 2 524 #define SECPKG_ATTR_DCE_INFO 3 525 #define SECPKG_ATTR_STREAM_SIZES 4 526 #define SECPKG_ATTR_KEY_INFO 5 527 #define SECPKG_ATTR_AUTHORITY 6 528 #define SECPKG_ATTR_PROTO_INFO 7 529 #define SECPKG_ATTR_PASSWORD_EXPIRY 8 530 #define SECPKG_ATTR_SESSION_KEY 9 531 #define SECPKG_ATTR_PACKAGE_INFO 10 532 #define SECPKG_ATTR_USER_FLAGS 11 533 #define SECPKG_ATTR_NEGOTIATION_INFO 12 534 #define SECPKG_ATTR_NATIVE_NAMES 13 535 #define SECPKG_ATTR_FLAGS 14 536 #define SECPKG_ATTR_USE_VALIDATED 15 537 #define SECPKG_ATTR_CREDENTIAL_NAME 16 538 #define SECPKG_ATTR_TARGET_INFORMATION 17 539 #define SECPKG_ATTR_ACCESS_TOKEN 18 540 #define SECPKG_ATTR_TARGET 19 541 #define SECPKG_ATTR_AUTHENTICATION_ID 20 542 #define SECPKG_ATTR_LOGOFF_TIME 21 543 #define SECPKG_ATTR_NEGO_KEYS 22 544 #define SECPKG_ATTR_PROMPTING_NEEDED 24 545 #define SECPKG_ATTR_UNIQUE_BINDINGS 25 546 #define SECPKG_ATTR_ENDPOINT_BINDINGS 26 547 #define SECPKG_ATTR_CLIENT_SPECIFIED_TARGET 27 548 #define SECPKG_ATTR_LAST_CLIENT_TOKEN_STATUS 30 549 #define SECPKG_ATTR_NEGO_PKG_INFO 31 550 #define SECPKG_ATTR_NEGO_STATUS 32 551 #define SECPKG_ATTR_CONTEXT_DELETED 33 553 #define SECPKG_ATTR_SUBJECT_SECURITY_ATTRIBUTES 128 554 #define SECPKG_ATTR_NEGO_INFO_FLAG_NO_KERBEROS 0x1 555 #define SECPKG_ATTR_NEGO_INFO_FLAG_NO_NTLM 0x2 586 #define SecPkgContext_Names WINELIB_NAME_AW(SecPkgContext_Names) 587 #define PSecPkgContext_Names WINELIB_NAME_AW(PSecPkgContext_Names) 619 #define SecPkgContext_KeyInfo WINELIB_NAME_AW(SecPkgContext_KeyInfo) 620 #define PSecPkgContext_KeyInfo WINELIB_NAME_AW(PSecPkgContext_KeyInfo) 632 #define SecPkgContext_Authority WINELIB_NAME_AW(SecPkgContext_Authority) 633 #define PSecPkgContext_Authority WINELIB_NAME_AW(PSecPkgContext_Authority) 649 #define SecPkgContext_ProtoInfo WINELIB_NAME_AW(SecPkgContext_ProtoInfo) 650 #define PSecPkgContext_ProtoInfo WINELIB_NAME_AW(PSecPkgContext_ProtoInfo) 672 #define SecPkgContext_PackageInfo WINELIB_NAME_AW(SecPkgContext_PackageInfo) 673 #define PSecPkgContext_PackageInfo WINELIB_NAME_AW(PSecPkgContext_PackageInfo) 697 #define SecPkgContext_NegotiationInfo WINELIB_NAME_AW(SecPkgContext_NegotiationInfo) 698 #define PSecPkgContext_NegotiationInfo WINELIB_NAME_AW(PSecPkgContext_NegotiationInfo) 701 #define SECPKG_NEGOTIATION_COMPLETE 0 702 #define SECPKG_NEGOTIATION_OPTIMISTIC 1 703 #define SECPKG_NEGOTIATION_IN_PROGRESS 2 704 #define SECPKG_NEGOTIATION_DIRECT 3 705 #define SECPKG_NEGOTIATION_TRY_MULTICRED 4 719 #define SecPkgContext_NativeNames WINELIB_NAME_AW(SecPkgContext_NativeNames) 720 #define PSecPkgContext_NativeNames WINELIB_NAME_AW(PSecPkgContext_NativeNames) 734 #define SecPkgContext_CredentialName WINELIB_NAME_AW(SecPkgContext_CredentialName) 735 #define PSecPkgContext_CredentialName WINELIB_NAME_AW(PSecPkgContext_CredentialName) 813 #define QuerySecurityPackageInfo WINELIB_NAME_AW(QuerySecurityPackageInfo) 819 #define QUERY_SECURITY_PACKAGE_INFO_FN WINELIB_NAME_AW(QUERY_SECURITY_PACKAGE_INFO_FN_) 827 _Out_ void **pToken);
833 #define SECPKG_CONTEXT_EXPORT_RESET_NEW 0x00000001 834 #define SECPKG_CONTEXT_EXPORT_DELETE_OLD 0x00000002 852 #define ImportSecurityContext WINELIB_NAME_AW(ImportSecurityContext) 858 #define IMPORT_SECURITY_CONTEXT_FN WINELIB_NAME_AW(IMPORT_SECURITY_CONTEXT_FN_) 884 #define AddCredentials WINELIB_NAME_AW(AddCredentials) 919 #define SECQOP_WRAP_NO_ENCRYPT 0x80000001 942 #define SetContextAttributes WINELIB_NAME_AW(SetContextAttributes) 949 #define SECURITY_ENTRYPOINT_ANSIA "InitSecurityInterfaceA" 950 #define SECURITY_ENTRYPOINT_ANSIW "InitSecurityInterfaceW" 951 #define SECURITY_ENTRYPOINT_ANSI WINELIB_NAME_AW(SECURITY_ENTRYPOINT_ANSI) 1020 #define SecurityFunctionTable WINELIB_NAME_AW(SecurityFunctionTable) 1021 #define PSecurityFunctionTable WINELIB_NAME_AW(PSecurityFunctionTable) 1023 #define SECURITY_SUPPORT_PROVIDER_INTERFACE_VERSION 1 1024 #define SECURITY_SUPPORT_PROVIDER_INTERFACE_VERSION_2 2 1028 #define InitSecurityInterface WINELIB_NAME_AW(InitSecurityInterface) 1032 #define INIT_SECURITY_INTERFACE WINELIB_NAME_AW(INIT_SECURITY_INTERFACE_)
SECURITY_STATUS SEC_ENTRY QueryCredentialsAttributesW(_In_ PCredHandle phCredential, _In_ ULONG ulAttribute, _Inout_ void *pBuffer)
DELETE_SECURITY_CONTEXT_FN DeleteSecurityContext
_Field_size_(cBuffers) PSecBuffer pBuffers
DECRYPT_MESSAGE_FN DecryptMessage
struct _SEC_CHANNEL_BINDINGS SEC_CHANNEL_BINDINGS
QUERY_SECURITY_PACKAGE_INFO_FN_A QuerySecurityPackageInfoA
PSecurityFunctionTableA SEC_ENTRY InitSecurityInterfaceA(void)
struct _SecPkgContext_PasswordExpiry * PSecPkgContext_PasswordExpiry
SECURITY_STATUS(SEC_ENTRY * SET_CONTEXT_ATTRIBUTES_FN_A)(PCtxtHandle, ULONG, void *, ULONG)
SECURITY_STATUS(SEC_ENTRY * EXPORT_SECURITY_CONTEXT_FN)(PCtxtHandle, ULONG, PSecBuffer, void **)
SECURITY_STATUS SEC_ENTRY QueryContextAttributesA(_In_ PCtxtHandle phContext, _In_ ULONG ulAttribute, _Out_ void *pBuffer)
struct png_info_def **typedef void(__cdecl typeof(png_destroy_read_struct))(struct png_struct_def **
struct _SecPkgInfoW SecPkgInfoW
APPLY_CONTROL_TOKEN_FN ApplyControlToken
ADD_CREDENTIALS_FN_A AddCredentialsA
struct _SecBuffer * PSecBuffer
struct _SecPkgCredentials_NamesA * PSecPkgCredentials_NamesA
ULONG cbApplicationDataLength
VERIFY_SIGNATURE_FN VerifySignature
SECURITY_STATUS(SEC_ENTRY * IMPORT_SECURITY_CONTEXT_FN_A)(SEC_CHAR *, PSecBuffer, void *, PCtxtHandle)
struct _SecPkgContext_NamesW SecPkgContext_NamesW
SECURITY_STATUS(SEC_ENTRY * ACQUIRE_CREDENTIALS_HANDLE_FN_A)(SEC_CHAR *, SEC_CHAR *, ULONG, PLUID, PVOID, SEC_GET_KEY_FN, PVOID, PCredHandle, PTimeStamp)
struct _SecPkgCredentials_NamesA SecPkgCredentials_NamesA
struct _SecPkgContext_UserFlags SecPkgContext_UserFlags
SECURITY_STATUS(SEC_ENTRY * ENUMERATE_SECURITY_PACKAGES_FN_W)(PULONG, PSecPkgInfoW *)
struct _SecPkgContext_Bindings * PSecPkgContext_Bindings
REVERT_SECURITY_CONTEXT_FN RevertSecurityContext
FREE_CREDENTIALS_HANDLE_FN FreeCredentialsHandle
SECURITY_STATUS SEC_ENTRY SetContextAttributesW(_In_ PCtxtHandle phContext, _In_ ULONG ulAttribute, _In_reads_bytes_(cbBuffer) void *pBuffer, _In_ ULONG cbBuffer)
SECURITY_STATUS SEC_ENTRY VerifySignature(_In_ PCtxtHandle phContext, _In_ PSecBufferDesc pMessage, _In_ ULONG MessageSeqNo, _Out_ PULONG pfQOP)
SECURITY_STATUS(SEC_ENTRY * ENUMERATE_SECURITY_PACKAGES_FN_A)(PULONG, PSecPkgInfoA *)
DECRYPT_MESSAGE_FN DecryptMessage
struct _SecHandle * PSecHandle
struct _SecPkgContext_PackageInfoA SecPkgContext_PackageInfoA
struct _SecPkgContext_NamesW * PSecPkgContext_NamesW
APPLY_CONTROL_TOKEN_FN ApplyControlToken
SECURITY_STATUS SEC_ENTRY ExportSecurityContext(_In_ PCtxtHandle phContext, _In_ ULONG fFlags, _Out_ PSecBuffer pPackedContext, _Out_ void **pToken)
void * PSEC_WINNT_AUTH_IDENTITY_OPAQUE
struct _SECURITY_STRING SECURITY_STRING
SECURITY_STATUS SEC_ENTRY SetContextAttributesA(_In_ PCtxtHandle phContext, _In_ ULONG ulAttribute, _In_reads_bytes_(cbBuffer) void *pBuffer, _In_ ULONG cbBuffer)
FREE_CREDENTIALS_HANDLE_FN FreeCredentialsHandle
SECURITY_STATUS(SEC_ENTRY * APPLY_CONTROL_TOKEN_FN)(PCtxtHandle, PSecBufferDesc)
SECURITY_STATUS(SEC_ENTRY * SET_CONTEXT_ATTRIBUTES_FN_W)(PCtxtHandle, ULONG, void *, ULONG)
struct _SecPkgContext_NativeNamesA * PSecPkgContext_NativeNamesA
IMPERSONATE_SECURITY_CONTEXT_FN ImpersonateSecurityContext
unsigned char * MarshalledTargetInfo
SECURITY_STATUS(SEC_ENTRY * REVERT_SECURITY_CONTEXT_FN)(PCtxtHandle)
SECURITY_STATUS SEC_ENTRY QuerySecurityContextToken(_In_ PCtxtHandle phContext, _Out_ HANDLE *phToken)
struct _SecPkgCredentials_NamesW * PSecPkgCredentials_NamesW
SECURITY_STATUS(SEC_ENTRY * DELETE_SECURITY_CONTEXT_FN)(PCtxtHandle)
struct _SecPkgContext_ProtoInfoW * PSecPkgContext_ProtoInfoW
struct _SecPkgContext_NativeNamesA SecPkgContext_NativeNamesA
SECURITY_STATUS SEC_ENTRY EncryptMessage(_In_ PCtxtHandle phContext, _In_ ULONG fQOP, _In_ PSecBufferDesc pMessage, _In_ ULONG MessageSeqNo)
SECURITY_STATUS SEC_ENTRY FreeContextBuffer(_Inout_ PVOID pv)
struct _SecBufferDesc SecBufferDesc
struct _SecPkgContext_NativeNamesW SecPkgContext_NativeNamesW
SECURITY_STATUS SEC_ENTRY AddCredentialsW(_In_ PCredHandle hCredentials, _In_opt_ SEC_WCHAR *pszPrincipal, _In_ SEC_WCHAR *pszPackage, _In_ ULONG fCredentialUse, _In_opt_ void *pAuthData, _In_opt_ SEC_GET_KEY_FN pGetKeyFn, _In_opt_ void *pvGetKeyArgument, _Out_opt_ PTimeStamp ptsExpiry)
ACQUIRE_CREDENTIALS_HANDLE_FN_A AcquireCredentialsHandleA
ENCRYPT_MESSAGE_FN EncryptMessage
struct _SecPkgContext_KeyInfoA SecPkgContext_KeyInfoA
SECURITY_STATUS SEC_ENTRY ImportSecurityContextA(_In_ SEC_CHAR *pszPackage, _In_ PSecBuffer pPackedContext, _In_ void *Token, _Out_ PCtxtHandle phContext)
SEC_WCHAR * sSignatureAlgorithmName
struct _SecPkgContext_TargetInformation SecPkgContext_TargetInformation
SECURITY_STATUS(SEC_ENTRY * ACCEPT_SECURITY_CONTEXT_FN)(PCredHandle, PCtxtHandle, PSecBufferDesc, ULONG, ULONG, PCtxtHandle, PSecBufferDesc, ULONG *, PTimeStamp)
SECURITY_STATUS SEC_ENTRY QueryContextAttributesW(_In_ PCtxtHandle phContext, _In_ ULONG ulAttribute, _Out_ void *pBuffer)
SECURITY_STATUS SEC_ENTRY DecryptMessage(_In_ PCtxtHandle phContext, _In_ PSecBufferDesc pMessage, _In_ ULONG MessageSeqNo, _Out_opt_ PULONG pfQOP)
struct _SecPkgContext_CredentialNameA * PSecPkgContext_CredentialNameA
SEC_CHAR * sEncryptAlgorithmName
struct _SecPkgContext_PackageInfoW SecPkgContext_PackageInfoW
TimeStamp tsPasswordExpires
struct _SecPkgContext_Sizes * PSecPkgContext_Sizes
struct _SecPkgContext_Lifespan * PSecPkgContext_Lifespan
struct _SecPkgContext_NegotiationInfoW SecPkgContext_NegotiationInfoW
SECURITY_STATUS(SEC_ENTRY * QUERY_CONTEXT_ATTRIBUTES_FN_W)(PCtxtHandle, ULONG, void *)
struct _SecPkgContext_Target * PSecPkgContext_Target
QUERY_SECURITY_CONTEXT_TOKEN_FN QuerySecurityContextToken
SECURITY_STATUS SEC_ENTRY EnumerateSecurityPackagesA(_Out_ PULONG pcPackages, _Outptr_ PSecPkgInfoA *ppPackageInfo)
struct _SecPkgContext_AuthorityA * PSecPkgContext_AuthorityA
SECURITY_STATUS SEC_ENTRY MakeSignature(_In_ PCtxtHandle phContext, _In_ ULONG fQOP, _In_ PSecBufferDesc pMessage, _In_ ULONG MessageSeqNo)
MAKE_SIGNATURE_FN MakeSignature
ULONG dwInitiatorAddrType
struct _SecPkgContext_ProtoInfoA * PSecPkgContext_ProtoInfoA
struct _SecPkgContext_NamesA * PSecPkgContext_NamesA
QUERY_CONTEXT_ATTRIBUTES_FN_A QueryContextAttributesA
struct _SecPkgContext_NegotiationInfoA * PSecPkgContext_NegotiationInfoA
_Field_size_bytes_(cbBuffer) void *pvBuffer
SECURITY_STATUS(SEC_ENTRY * DECRYPT_MESSAGE_FN)(PCtxtHandle, PSecBufferDesc, ULONG, PULONG)
_Check_return_ SECURITY_STATUS SEC_ENTRY ImpersonateSecurityContext(_In_ PCtxtHandle phContext)
ENUMERATE_SECURITY_PACKAGES_FN_W EnumerateSecurityPackagesW
ENUMERATE_SECURITY_PACKAGES_FN_A EnumerateSecurityPackagesA
SECURITY_STATUS SEC_ENTRY QuerySecurityPackageInfoA(_In_ SEC_CHAR *pszPackageName, _Outptr_ PSecPkgInfoA *ppPackageInfo)
SECURITY_STATUS SEC_ENTRY AddCredentialsA(_In_ PCredHandle hCredentials, _In_opt_ SEC_CHAR *pszPrincipal, _In_ SEC_CHAR *pszPackage, _In_ ULONG fCredentialUse, _In_opt_ void *pAuthData, _In_opt_ SEC_GET_KEY_FN pGetKeyFn, _In_opt_ void *pvGetKeyArgument, _Out_opt_ PTimeStamp ptsExpiry)
struct _SecPkgContext_PackageInfoW * PSecPkgContext_PackageInfoW
SECURITY_INTEGER * PTimeStamp
struct _SecPkgContext_KeyInfoW * PSecPkgContext_KeyInfoW
SECURITY_STATUS SEC_ENTRY CompleteAuthToken(_In_ PCtxtHandle phContext, _In_ PSecBufferDesc pToken)
FREE_CONTEXT_BUFFER_FN FreeContextBuffer
PSecurityFunctionTableA(SEC_ENTRY * INIT_SECURITY_INTERFACE_A)(void)
SECURITY_STATUS(SEC_ENTRY * ACQUIRE_CREDENTIALS_HANDLE_FN_W)(SEC_WCHAR *, SEC_WCHAR *, ULONG, PLUID, PVOID, SEC_GET_KEY_FN, PVOID, PCredHandle, PTimeStamp)
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFKEY * Key
SECURITY_STATUS(SEC_ENTRY * ADD_CREDENTIALS_FN_A)(PCredHandle, SEC_CHAR *, SEC_CHAR *, ULONG, void *, SEC_GET_KEY_FN, void *, PTimeStamp)
SEC_CHAR * sAuthorityName
struct _SecPkgContext_CredentialNameW SecPkgContext_CredentialNameW
SECURITY_STATUS SEC_ENTRY ApplyControlToken(_In_ PCtxtHandle phContext, _In_ PSecBufferDesc pInput)
ENCRYPT_MESSAGE_FN EncryptMessage
struct _SecPkgContext_Flags SecPkgContext_Flags
struct _SecPkgContext_StreamSizes * PSecPkgContext_StreamSizes
PSecurityFunctionTableW(SEC_ENTRY * INIT_SECURITY_INTERFACE_W)(void)
VERIFY_SIGNATURE_FN VerifySignature
struct _SecBufferDesc * PSecBufferDesc
SECURITY_STATUS SEC_ENTRY QuerySecurityPackageInfoW(_In_ SEC_WCHAR *pszPackageName, _Outptr_ PSecPkgInfoW *ppPackageInfo)
SECURITY_STATUS(SEC_ENTRY * QUERY_SECURITY_PACKAGE_INFO_FN_A)(SEC_CHAR *, PSecPkgInfoA *)
SEC_WCHAR * sProtocolName
SECURITY_STATUS(SEC_ENTRY * FREE_CREDENTIALS_HANDLE_FN)(PCredHandle)
SECURITY_STATUS(SEC_ENTRY * VERIFY_SIGNATURE_FN)(PCtxtHandle, PSecBufferDesc, ULONG, PULONG)
SECURITY_STATUS SEC_ENTRY InitializeSecurityContextA(_In_opt_ PCredHandle phCredential, _In_opt_ PCtxtHandle phContext, _In_opt_ SEC_CHAR *pszTargetName, _In_ ULONG fContextReq, _In_ ULONG Reserved1, _In_ ULONG TargetDataRep, _In_opt_ PSecBufferDesc pInput, _In_ ULONG Reserved2, _Inout_opt_ PCtxtHandle phNewContext, _Inout_opt_ PSecBufferDesc pOutput, _Out_ ULONG *pfContextAttr, _Out_opt_ PTimeStamp ptsExpiry)
PVOID *typedef PSecBuffer
struct _SecPkgContext_Lifespan SecPkgContext_Lifespan
struct _SEC_CHANNEL_BINDINGS * PSEC_CHANNEL_BINDINGS
IMPORT_SECURITY_CONTEXT_FN_A ImportSecurityContextA
struct _SecPkgContext_Bindings SecPkgContext_Bindings
struct _SecPkgContext_Target SecPkgContext_Target
SECURITY_STATUS(SEC_ENTRY * QUERY_CREDENTIALS_ATTRIBUTES_FN_W)(PCredHandle, ULONG, PVOID)
struct _SecPkgContext_ProtoInfoW SecPkgContext_ProtoInfoW
INITIALIZE_SECURITY_CONTEXT_FN_A InitializeSecurityContextA
SECURITY_STATUS SEC_ENTRY EnumerateSecurityPackagesW(_Out_ PULONG pcPackages, _Outptr_ PSecPkgInfoW *ppPackageInfo)
struct _SecPkgContext_AccessToken SecPkgContext_AccessToken
SECURITY_STATUS(SEC_ENTRY * COMPLETE_AUTH_TOKEN_FN)(PCtxtHandle, PSecBufferDesc)
ULONG MarshalledTargetInfoLength
DELETE_SECURITY_CONTEXT_FN DeleteSecurityContext
struct _SECURITY_INTEGER * PSECURITY_INTEGER
_In_opt_ LPSTR _In_opt_ LPSTR _In_ DWORD _In_ DWORD _Out_opt_ PHANDLE phToken
struct _SecPkgContext_KeyInfoA * PSecPkgContext_KeyInfoA
struct _SECURITY_FUNCTION_TABLE_A * PSecurityFunctionTableA
INITIALIZE_SECURITY_CONTEXT_FN_W InitializeSecurityContextW
struct _SecPkgContext_NegotiationInfoW * PSecPkgContext_NegotiationInfoW
SECURITY_STATUS SEC_ENTRY AcquireCredentialsHandleA(_In_opt_ SEC_CHAR *pszPrincipal, _In_ SEC_CHAR *pszPackage, _In_ ULONG fCredentialsUse, _In_opt_ PLUID pvLogonID, _In_opt_ PVOID pAuthData, _In_opt_ SEC_GET_KEY_FN pGetKeyFn, _In_opt_ PVOID pvGetKeyArgument, _Out_ PCredHandle phCredential, _Out_opt_ PTimeStamp ptsExpiry)
SECURITY_STATUS(SEC_ENTRY * MAKE_SIGNATURE_FN)(PCtxtHandle, ULONG, PSecBufferDesc, ULONG)
struct _SecPkgContext_NamesA SecPkgContext_NamesA
SEC_CHAR * sCredentialName
struct _SecBuffer SecBuffer
ULONG dwApplicationDataOffset
ADD_CREDENTIALS_FN_W AddCredentialsW
IMPORT_SECURITY_CONTEXT_FN_W ImportSecurityContextW
struct _SECURITY_FUNCTION_TABLE_W SecurityFunctionTableW
struct _SecPkgContext_Flags * PSecPkgContext_Flags
ULONG SEC_ENTRY SspiPromptForCredentialsW(_In_ PCWSTR, _In_opt_ void *, _In_ ULONG, _In_ PCWSTR, _In_opt_ PSEC_WINNT_AUTH_IDENTITY_OPAQUE, _Outptr_ PSEC_WINNT_AUTH_IDENTITY_OPAQUE *, _Inout_opt_ int *, _In_ ULONG)
SECURITY_STATUS(SEC_ENTRY * ADD_CREDENTIALS_FN_W)(PCredHandle, SEC_WCHAR *, SEC_WCHAR *, ULONG, void *, SEC_GET_KEY_FN, void *, PTimeStamp)
SECURITY_STATUS(SEC_ENTRY * INITIALIZE_SECURITY_CONTEXT_FN_A)(PCredHandle, PCtxtHandle, SEC_CHAR *, ULONG, ULONG, ULONG, PSecBufferDesc, ULONG, PCtxtHandle, PSecBufferDesc, ULONG *, PTimeStamp)
SECURITY_STATUS(SEC_ENTRY * IMPERSONATE_SECURITY_CONTEXT_FN)(PCtxtHandle)
struct _SecPkgContext_PasswordExpiry SecPkgContext_PasswordExpiry
SECURITY_STATUS SEC_ENTRY QueryCredentialsAttributesA(_In_ PCredHandle phCredential, _In_ ULONG ulAttribute, _Inout_ void *pBuffer)
SECURITY_INTEGER TimeStamp
EXPORT_SECURITY_CONTEXT_FN ExportSecurityContext
SECURITY_STATUS SEC_ENTRY AcquireCredentialsHandleW(_In_opt_ SEC_WCHAR *pszPrincipal, _In_ SEC_WCHAR *pszPackage, _In_ ULONG fCredentialsUse, _In_opt_ PLUID pvLogonID, _In_opt_ PVOID pAuthData, _In_opt_ SEC_GET_KEY_FN pGetKeyFn, _In_opt_ PVOID pvGetKeyArgument, _Out_ PCredHandle phCredential, _Out_opt_ PTimeStamp ptsExpiry)
unsigned short MaximumLength
QUERY_CREDENTIALS_ATTRIBUTES_FN_A QueryCredentialsAttributesA
struct _SecPkgCredentials_NamesW SecPkgCredentials_NamesW
_Field_size_bytes_(SessionKeyLength) unsigned char *SessionKey
struct _SecPkgContext_AccessToken * PSecPkgContext_AccessToken
void(SEC_ENTRY * SEC_GET_KEY_FN)(void *Arg, void *Principal, ULONG KeyVer, void **Key, SECURITY_STATUS *Status)
struct _SecPkgInfoA SecPkgInfoA
SEC_CHANNEL_BINDINGS * Bindings
struct _SecPkgContext_UserFlags * PSecPkgContext_UserFlags
SEC_WCHAR * sEncryptAlgorithmName
QUERY_SECURITY_CONTEXT_TOKEN_FN QuerySecurityContextToken
PSecurityFunctionTableW SEC_ENTRY InitSecurityInterfaceW(void)
COMPLETE_AUTH_TOKEN_FN CompleteAuthToken
struct _SecPkgContext_ProtoInfoA SecPkgContext_ProtoInfoA
SET_CONTEXT_ATTRIBUTES_FN_W SetContextAttributesW
SECURITY_STATUS SEC_ENTRY DeleteSecurityContext(_In_ PCtxtHandle phContext)
struct _SecPkgInfoW * PSecPkgInfoW
struct _SecPkgContext_TargetInformation * PSecPkgContext_TargetInformation
SET_CONTEXT_ATTRIBUTES_FN_A SetContextAttributesA
struct _SecPkgContext_CredentialNameW * PSecPkgContext_CredentialNameW
struct _SecPkgContext_AuthorityA SecPkgContext_AuthorityA
struct _SECURITY_FUNCTION_TABLE_A SecurityFunctionTableA
struct _SecPkgContext_AuthorityW SecPkgContext_AuthorityW
struct _SecPkgContext_NegotiationInfoA SecPkgContext_NegotiationInfoA
SEC_WCHAR * sAuthorityName
SEC_CHAR * sSignatureAlgorithmName
REVERT_SECURITY_CONTEXT_FN RevertSecurityContext
struct _SecPkgContext_PackageInfoA * PSecPkgContext_PackageInfoA
ACCEPT_SECURITY_CONTEXT_FN AcceptSecurityContext
struct _SecPkgContext_AuthzID SecPkgContext_AuthzID
struct _SECURITY_INTEGER SECURITY_INTEGER
struct _SecPkgContext_DceInfo SecPkgContext_DceInfo
struct _SECURITY_STRING * PSECURITY_STRING
ACQUIRE_CREDENTIALS_HANDLE_FN_W AcquireCredentialsHandleW
struct _SecPkgContext_DceInfo * PSecPkgContext_DceInfo
SEC_WCHAR * sCredentialName
SECURITY_STATUS(SEC_ENTRY * QUERY_CREDENTIALS_ATTRIBUTES_FN_A)(PCredHandle, ULONG, PVOID)
SECURITY_STATUS SEC_ENTRY FreeCredentialsHandle(_In_ PCredHandle phCredential)
SECURITY_STATUS SEC_ENTRY ImportSecurityContextW(_In_ SEC_WCHAR *pszPackage, _In_ PSecBuffer pPackedContext, _In_ void *Token, _Out_ PCtxtHandle phContext)
QUERY_CONTEXT_ATTRIBUTES_FN_W QueryContextAttributesW
ACCEPT_SECURITY_CONTEXT_FN AcceptSecurityContext
struct _SecPkgContext_SessionKey * PSecPkgContext_SessionKey
SECURITY_STATUS SEC_ENTRY AcceptSecurityContext(_In_opt_ PCredHandle phCredential, _In_opt_ PCtxtHandle phContext, _In_opt_ PSecBufferDesc pInput, _In_ ULONG fContextReq, _In_ ULONG TargetDataRep, _Inout_opt_ PCtxtHandle phNewContext, _Inout_opt_ PSecBufferDesc pOutput, _Out_ ULONG *pfContextAttr, _Out_opt_ PTimeStamp ptsExpiry)
SECURITY_STATUS(SEC_ENTRY * QUERY_CONTEXT_ATTRIBUTES_FN_A)(PCtxtHandle, ULONG, void *)
SECURITY_STATUS(SEC_ENTRY * QUERY_SECURITY_CONTEXT_TOKEN_FN)(PCtxtHandle, HANDLE *)
SECURITY_STATUS(SEC_ENTRY * IMPORT_SECURITY_CONTEXT_FN_W)(SEC_WCHAR *, PSecBuffer, void *, PCtxtHandle)
struct _SecPkgContext_AuthzID * PSecPkgContext_AuthzID
FREE_CONTEXT_BUFFER_FN FreeContextBuffer
SECURITY_STATUS(SEC_ENTRY * QUERY_SECURITY_PACKAGE_INFO_FN_W)(SEC_WCHAR *, PSecPkgInfoW *)
MAKE_SIGNATURE_FN MakeSignature
struct _SecPkgContext_KeyInfoW SecPkgContext_KeyInfoW
struct _SecPkgContext_NativeNamesW * PSecPkgContext_NativeNamesW
struct _SecPkgInfoA * PSecPkgInfoA
struct _SecHandle SecHandle
EXPORT_SECURITY_CONTEXT_FN ExportSecurityContext
COMPLETE_AUTH_TOKEN_FN CompleteAuthToken
IMPERSONATE_SECURITY_CONTEXT_FN ImpersonateSecurityContext
SECURITY_STATUS(SEC_ENTRY * FREE_CONTEXT_BUFFER_FN)(_Inout_ PVOID)
struct _SecPkgContext_CredentialNameA SecPkgContext_CredentialNameA
SECURITY_STATUS SEC_ENTRY RevertSecurityContext(_In_ PCtxtHandle phContext)
SECURITY_STATUS SEC_ENTRY InitializeSecurityContextW(_In_opt_ PCredHandle phCredential, _In_opt_ PCtxtHandle phContext, _In_opt_ SEC_WCHAR *pszTargetName, _In_ ULONG fContextReq, _In_ ULONG Reserved1, _In_ ULONG TargetDataRep, _In_opt_ PSecBufferDesc pInput, _In_ ULONG Reserved2, _Inout_opt_ PCtxtHandle phNewContext, _Inout_opt_ PSecBufferDesc pOutput, _Out_ ULONG *pfContextAttr, _Out_opt_ PTimeStamp ptsExpiry)
SECURITY_STATUS(SEC_ENTRY * INITIALIZE_SECURITY_CONTEXT_FN_W)(PCredHandle, PCtxtHandle, SEC_WCHAR *, ULONG, ULONG, ULONG, PSecBufferDesc, ULONG, PCtxtHandle, PSecBufferDesc, ULONG *, PTimeStamp)
struct _SecPkgContext_AuthorityW * PSecPkgContext_AuthorityW
struct _SecPkgContext_StreamSizes SecPkgContext_StreamSizes
struct _SecPkgContext_Sizes SecPkgContext_Sizes
QUERY_CREDENTIALS_ATTRIBUTES_FN_W QueryCredentialsAttributesW
SECURITY_STATUS(SEC_ENTRY * ENCRYPT_MESSAGE_FN)(PCtxtHandle, ULONG, PSecBufferDesc, ULONG)
struct _SecPkgContext_SessionKey SecPkgContext_SessionKey
CONST SEC_CHAR * SECURITY_PCSTR
struct _SECURITY_FUNCTION_TABLE_W * PSecurityFunctionTableW
#define _In_reads_bytes_(size)
QUERY_SECURITY_PACKAGE_INFO_FN_W QuerySecurityPackageInfoW