wincred.h (5.2.3790.3959-Windows 5.0) | | wincred.h (6.0.6002.18005-Windows 6.0) |
|
| | //depot/vbl_srv_wcsmain/ds/published/inc/wincred.w#4 - integrate change 66730 (t
ext) |
/*++ BUILD Version: 0001 // Increment this if a change has global effects | | /*++ BUILD Version: 0001 // Increment this if a change has global effects |
| | |
Copyright (c) 2000 Microsoft Corporation | | Copyright (c) 2000 Microsoft Corporation |
| | |
Module Name: | | Module Name: |
| | |
wincred.h | | wincred.h |
| | |
Abstract: | | Abstract: |
| | |
This module contains the public data structures and API definitions | | This module contains the public data structures and API definitions |
needed for the Credential Manager. | | needed for the Credential Manager. |
| | |
Author: | | Author: |
| | |
|
Cliff Van Dyke (CliffV) 11-January-2000 | | |
| | |
Revision History: | | Revision History: |
| | |
--*/ | | --*/ |
| | |
#ifndef _WINCRED_H_ | | #ifndef _WINCRED_H_ |
#define _WINCRED_H_ | | #define _WINCRED_H_ |
| | |
#if !defined(_ADVAPI32_) | | #if !defined(_ADVAPI32_) |
|
#define WINADVAPI DECLSPEC_IMPORT | | #define WINADVAPI DECLSPEC_IMPORT |
#else | | #else |
#define WINADVAPI | | #define WINADVAPI |
#endif | | #endif |
| | |
#if !defined(CREDUIAPI) | | #if !defined(CREDUIAPI) |
#if !defined(_CREDUI_) | | #if !defined(_CREDUI_) |
|
#define CREDUIAPI DECLSPEC_IMPORT | | #define CREDUIAPI EXTERN_C DECLSPEC_IMPORT |
#else | | #else |
|
#define CREDUIAPI | | #define CREDUIAPI EXTERN_C |
#endif | | #endif |
#endif | | #endif |
| | |
#ifdef __cplusplus | | #ifdef __cplusplus |
extern "C" { | | extern "C" { |
#endif | | #endif |
| | |
// | | // |
// Ensure PCtxtHandle is defined | | // Ensure PCtxtHandle is defined |
// | | // |
| | |
skipping to change at line 135 | | skipping to change at line 134 |
#define STATUS_ACCOUNT_LOCKED_OUT ((NTSTATUS)0xC0000234L) // ntsubauth | | #define STATUS_ACCOUNT_LOCKED_OUT ((NTSTATUS)0xC0000234L) // ntsubauth |
#define STATUS_ACCOUNT_EXPIRED ((NTSTATUS)0xC0000193L) // ntsubauth | | #define STATUS_ACCOUNT_EXPIRED ((NTSTATUS)0xC0000193L) // ntsubauth |
#define STATUS_LOGON_TYPE_NOT_GRANTED ((NTSTATUS)0xC000015BL) | | #define STATUS_LOGON_TYPE_NOT_GRANTED ((NTSTATUS)0xC000015BL) |
| | |
// Don't require lmerr.h | | // Don't require lmerr.h |
#define NERR_BASE 2100 | | #define NERR_BASE 2100 |
#define NERR_PasswordExpired (NERR_BASE+142) /* The password of this user has
expired. */ | | #define NERR_PasswordExpired (NERR_BASE+142) /* The password of this user has
expired. */ |
| | |
#define CREDUIP_IS_USER_PASSWORD_ERROR( _Status ) ( \ | | #define CREDUIP_IS_USER_PASSWORD_ERROR( _Status ) ( \ |
(_Status) == ERROR_LOGON_FAILURE || \ | | (_Status) == ERROR_LOGON_FAILURE || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_LOGON_FAILURE ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_LOGON_FAILURE ) || \ |
(_Status) == STATUS_LOGON_FAILURE || \ | | (_Status) == STATUS_LOGON_FAILURE || \ |
(_Status) == HRESULT_FROM_NT( STATUS_LOGON_FAILURE ) || \ | | (_Status) == HRESULT_FROM_NT( STATUS_LOGON_FAILURE ) || \ |
(_Status) == ERROR_ACCESS_DENIED || \ | | (_Status) == ERROR_ACCESS_DENIED || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_ACCESS_DENIED ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_ACCESS_DENIED ) || \ |
(_Status) == STATUS_ACCESS_DENIED || \ | | (_Status) == STATUS_ACCESS_DENIED || \ |
(_Status) == HRESULT_FROM_NT( STATUS_ACCESS_DENIED ) || \ | | (_Status) == HRESULT_FROM_NT( STATUS_ACCESS_DENIED ) || \ |
(_Status) == ERROR_INVALID_PASSWORD || \ | | (_Status) == ERROR_INVALID_PASSWORD || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_INVALID_PASSWORD ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_INVALID_PASSWORD ) || \ |
(_Status) == STATUS_WRONG_PASSWORD || \ | | (_Status) == STATUS_WRONG_PASSWORD || \ |
(_Status) == HRESULT_FROM_NT( STATUS_WRONG_PASSWORD ) || \ | | (_Status) == HRESULT_FROM_NT( STATUS_WRONG_PASSWORD ) || \ |
(_Status) == SEC_E_NO_CREDENTIALS || \ | | (_Status) == SEC_E_NO_CREDENTIALS || \ |
(_Status) == SEC_E_LOGON_DENIED \ | | (_Status) == SEC_E_LOGON_DENIED \ |
) | | ) |
| | |
#define CREDUIP_IS_DOWNGRADE_ERROR( _Status ) ( \ | | #define CREDUIP_IS_DOWNGRADE_ERROR( _Status ) ( \ |
(_Status) == ERROR_DOWNGRADE_DETECTED || \ | | (_Status) == ERROR_DOWNGRADE_DETECTED || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_DOWNGRADE_DETECTED ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_DOWNGRADE_DETECTED ) || \ |
(_Status) == STATUS_DOWNGRADE_DETECTED || \ | | (_Status) == STATUS_DOWNGRADE_DETECTED || \ |
(_Status) == HRESULT_FROM_NT( STATUS_DOWNGRADE_DETECTED ) \ | | (_Status) == HRESULT_FROM_NT( STATUS_DOWNGRADE_DETECTED ) \ |
) | | ) |
| | |
#define CREDUIP_IS_EXPIRED_ERROR( _Status ) ( \ | | #define CREDUIP_IS_EXPIRED_ERROR( _Status ) ( \ |
(_Status) == ERROR_PASSWORD_EXPIRED || \ | | (_Status) == ERROR_PASSWORD_EXPIRED || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_PASSWORD_EXPIRED ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_PASSWORD_EXPIRED ) || \ |
(_Status) == STATUS_PASSWORD_EXPIRED || \ | | (_Status) == STATUS_PASSWORD_EXPIRED || \ |
(_Status) == HRESULT_FROM_NT( STATUS_PASSWORD_EXPIRED ) || \ | | (_Status) == HRESULT_FROM_NT( STATUS_PASSWORD_EXPIRED ) || \ |
(_Status) == ERROR_PASSWORD_MUST_CHANGE || \ | | (_Status) == ERROR_PASSWORD_MUST_CHANGE || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_PASSWORD_MUST_CHANGE ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_PASSWORD_MUST_CHANGE ) || \ |
(_Status) == STATUS_PASSWORD_MUST_CHANGE || \ | | (_Status) == STATUS_PASSWORD_MUST_CHANGE || \ |
(_Status) == HRESULT_FROM_NT( STATUS_PASSWORD_MUST_CHANGE ) || \ | | (_Status) == HRESULT_FROM_NT( STATUS_PASSWORD_MUST_CHANGE ) || \ |
(_Status) == NERR_PasswordExpired || \ | | (_Status) == NERR_PasswordExpired || \ |
|
(_Status) == HRESULT_FROM_WIN32( NERR_PasswordExpired ) \ | | (_Status) == __HRESULT_FROM_WIN32( NERR_PasswordExpired ) \ |
) | | ) |
| | |
#define CREDUI_IS_AUTHENTICATION_ERROR( _Status ) ( \ | | #define CREDUI_IS_AUTHENTICATION_ERROR( _Status ) ( \ |
CREDUIP_IS_USER_PASSWORD_ERROR( _Status ) || \ | | CREDUIP_IS_USER_PASSWORD_ERROR( _Status ) || \ |
CREDUIP_IS_DOWNGRADE_ERROR( _Status ) || \ | | CREDUIP_IS_DOWNGRADE_ERROR( _Status ) || \ |
CREDUIP_IS_EXPIRED_ERROR( _Status ) \ | | CREDUIP_IS_EXPIRED_ERROR( _Status ) \ |
) | | ) |
| | |
#define CREDUI_NO_PROMPT_AUTHENTICATION_ERROR( _Status ) ( \ | | #define CREDUI_NO_PROMPT_AUTHENTICATION_ERROR( _Status ) ( \ |
(_Status) == ERROR_AUTHENTICATION_FIREWALL_FAILED || \ | | (_Status) == ERROR_AUTHENTICATION_FIREWALL_FAILED || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_AUTHENTICATION_FIREWALL_FAILED )
|| \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_AUTHENTICATION_FIREWALL_FAILED
) || \ |
(_Status) == STATUS_AUTHENTICATION_FIREWALL_FAILED || \ | | (_Status) == STATUS_AUTHENTICATION_FIREWALL_FAILED || \ |
(_Status) == HRESULT_FROM_NT( STATUS_AUTHENTICATION_FIREWALL_FAILED ) ||
\ | | (_Status) == HRESULT_FROM_NT( STATUS_AUTHENTICATION_FIREWALL_FAILED ) ||
\ |
(_Status) == ERROR_ACCOUNT_DISABLED || \ | | (_Status) == ERROR_ACCOUNT_DISABLED || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_ACCOUNT_DISABLED ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_ACCOUNT_DISABLED ) || \ |
(_Status) == STATUS_ACCOUNT_DISABLED || \ | | (_Status) == STATUS_ACCOUNT_DISABLED || \ |
(_Status) == HRESULT_FROM_NT( STATUS_ACCOUNT_DISABLED ) || \ | | (_Status) == HRESULT_FROM_NT( STATUS_ACCOUNT_DISABLED ) || \ |
(_Status) == ERROR_ACCOUNT_RESTRICTION || \ | | (_Status) == ERROR_ACCOUNT_RESTRICTION || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_ACCOUNT_RESTRICTION ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_ACCOUNT_RESTRICTION ) || \ |
(_Status) == STATUS_ACCOUNT_RESTRICTION || \ | | (_Status) == STATUS_ACCOUNT_RESTRICTION || \ |
(_Status) == HRESULT_FROM_NT( STATUS_ACCOUNT_RESTRICTION ) || \ | | (_Status) == HRESULT_FROM_NT( STATUS_ACCOUNT_RESTRICTION ) || \ |
(_Status) == ERROR_ACCOUNT_LOCKED_OUT || \ | | (_Status) == ERROR_ACCOUNT_LOCKED_OUT || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_ACCOUNT_LOCKED_OUT ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_ACCOUNT_LOCKED_OUT ) || \ |
(_Status) == STATUS_ACCOUNT_LOCKED_OUT || \ | | (_Status) == STATUS_ACCOUNT_LOCKED_OUT || \ |
(_Status) == HRESULT_FROM_NT( STATUS_ACCOUNT_LOCKED_OUT ) || \ | | (_Status) == HRESULT_FROM_NT( STATUS_ACCOUNT_LOCKED_OUT ) || \ |
(_Status) == ERROR_ACCOUNT_EXPIRED || \ | | (_Status) == ERROR_ACCOUNT_EXPIRED || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_ACCOUNT_EXPIRED ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_ACCOUNT_EXPIRED ) || \ |
(_Status) == STATUS_ACCOUNT_EXPIRED || \ | | (_Status) == STATUS_ACCOUNT_EXPIRED || \ |
(_Status) == HRESULT_FROM_NT( STATUS_ACCOUNT_EXPIRED ) || \ | | (_Status) == HRESULT_FROM_NT( STATUS_ACCOUNT_EXPIRED ) || \ |
(_Status) == ERROR_LOGON_TYPE_NOT_GRANTED || \ | | (_Status) == ERROR_LOGON_TYPE_NOT_GRANTED || \ |
|
(_Status) == HRESULT_FROM_WIN32( ERROR_LOGON_TYPE_NOT_GRANTED ) || \ | | (_Status) == __HRESULT_FROM_WIN32( ERROR_LOGON_TYPE_NOT_GRANTED ) || \ |
(_Status) == STATUS_LOGON_TYPE_NOT_GRANTED || \ | | (_Status) == STATUS_LOGON_TYPE_NOT_GRANTED || \ |
(_Status) == HRESULT_FROM_NT( STATUS_LOGON_TYPE_NOT_GRANTED ) \ | | (_Status) == HRESULT_FROM_NT( STATUS_LOGON_TYPE_NOT_GRANTED ) \ |
) | | ) |
| | |
//----------------------------------------------------------------------------- | | //----------------------------------------------------------------------------- |
// Structures | | // Structures |
//----------------------------------------------------------------------------- | | //----------------------------------------------------------------------------- |
| | |
// | | // |
// Credential Attribute | | // Credential Attribute |
| | |
skipping to change at line 224 | | skipping to change at line 223 |
// Maximum length of the UserName field. The worst case is <User>@<DnsDomain> | | // Maximum length of the UserName field. The worst case is <User>@<DnsDomain> |
#define CRED_MAX_USERNAME_LENGTH (256+1+256) | | #define CRED_MAX_USERNAME_LENGTH (256+1+256) |
| | |
// Maximum length of the TargetName field for CRED_TYPE_GENERIC (in characters) | | // Maximum length of the TargetName field for CRED_TYPE_GENERIC (in characters) |
#define CRED_MAX_GENERIC_TARGET_NAME_LENGTH 32767 | | #define CRED_MAX_GENERIC_TARGET_NAME_LENGTH 32767 |
| | |
// Maximum length of the TargetName field for CRED_TYPE_DOMAIN_* (in characters) | | // Maximum length of the TargetName field for CRED_TYPE_DOMAIN_* (in characters) |
// Largest one is <DfsRoot>\<DfsShare> | | // Largest one is <DfsRoot>\<DfsShare> |
#define CRED_MAX_DOMAIN_TARGET_NAME_LENGTH (256+1+80) | | #define CRED_MAX_DOMAIN_TARGET_NAME_LENGTH (256+1+80) |
| | |
|
| | // Maximum length of a target namespace |
| | #define CRED_MAX_TARGETNAME_NAMESPACE_LENGTH (256) |
| | |
| | // Maximum length of a target attribute |
| | #define CRED_MAX_TARGETNAME_ATTRIBUTE_LENGTH (256) |
| | |
// Maximum size of the Credential Attribute Value field (in bytes) | | // Maximum size of the Credential Attribute Value field (in bytes) |
|
#define CRED_MAX_VALUE_SIZE 256 | | #define CRED_MAX_VALUE_SIZE (256) |
| | |
// Maximum number of attributes per credential | | // Maximum number of attributes per credential |
#define CRED_MAX_ATTRIBUTES 64 | | #define CRED_MAX_ATTRIBUTES 64 |
| | |
typedef struct _CREDENTIAL_ATTRIBUTEA { | | typedef struct _CREDENTIAL_ATTRIBUTEA { |
LPSTR Keyword; | | LPSTR Keyword; |
DWORD Flags; | | DWORD Flags; |
DWORD ValueSize; | | DWORD ValueSize; |
LPBYTE Value; | | LPBYTE Value; |
} CREDENTIAL_ATTRIBUTEA, *PCREDENTIAL_ATTRIBUTEA; | | } CREDENTIAL_ATTRIBUTEA, *PCREDENTIAL_ATTRIBUTEA; |
| | |
skipping to change at line 267 | | skipping to change at line 272 |
#else | | #else |
typedef CREDENTIAL_ATTRIBUTEA CREDENTIAL_ATTRIBUTE; | | typedef CREDENTIAL_ATTRIBUTEA CREDENTIAL_ATTRIBUTE; |
typedef PCREDENTIAL_ATTRIBUTEA PCREDENTIAL_ATTRIBUTE; | | typedef PCREDENTIAL_ATTRIBUTEA PCREDENTIAL_ATTRIBUTE; |
#endif // UNICODE | | #endif // UNICODE |
| | |
// | | // |
// Special values of the TargetName field | | // Special values of the TargetName field |
// | | // |
#define CRED_SESSION_WILDCARD_NAME_W L"*Session" | | #define CRED_SESSION_WILDCARD_NAME_W L"*Session" |
#define CRED_SESSION_WILDCARD_NAME_A "*Session" | | #define CRED_SESSION_WILDCARD_NAME_A "*Session" |
|
| | #define CRED_UNIVERSAL_WILDCARD_W L'*' |
| | #define CRED_UNIVERSAL_WILDCARD_A '*' |
#define CRED_SESSION_WILDCARD_NAME_LENGTH (sizeof(CRED_SESSION_WILDCARD_NAME_A)-
1) | | #define CRED_SESSION_WILDCARD_NAME_LENGTH (sizeof(CRED_SESSION_WILDCARD_NAME_A)-
1) |
|
| | #define CRED_TARGETNAME_DOMAIN_NAMESPACE_W L"Domain" |
| | #define CRED_TARGETNAME_DOMAIN_NAMESPACE_A "Domain" |
| | #define CRED_TARGETNAME_DOMAIN_NAMESPACE_LENGTH (sizeof(CRED_TARGETNAME_DOMAIN_N |
| | AMESPACE_A)-1) |
| | #define CRED_UNIVERSAL_WILDCARD_W L'*' |
| | #define CRED_UNIVERSAL_WILDCARD_A '*' |
| | #define CRED_TARGETNAME_LEGACYGENERIC_NAMESPACE_W L"LegacyGeneric" |
| | #define CRED_TARGETNAME_LEGACYGENERIC_NAMESPACE_A "LegacyGeneric" |
| | #define CRED_TARGETNAME_LEGACYGENERIC_NAMESPACE_LENGTH (sizeof(CRED_TARGETNAME_L |
| | EGACYGENERIC_NAMESPACE_A)-1) |
| | #define CRED_TARGETNAME_NAMESPACE_SEPERATOR_W L':' |
| | #define CRED_TARGETNAME_NAMESPACE_SEPERATOR_A ':' |
| | #define CRED_TARGETNAME_ATTRIBUTE_SEPERATOR_W L'=' |
| | #define CRED_TARGETNAME_ATTRIBUTE_SEPERATOR_A '=' |
| | #define CRED_TARGETNAME_ATTRIBUTE_TARGET_W L"target" |
| | #define CRED_TARGETNAME_ATTRIBUTE_TARGET_A "target" |
| | #define CRED_TARGETNAME_ATTRIBUTE_TARGET_LENGTH (sizeof(CRED_TARGETNAME_ATTRIBUT |
| | E_TARGET_A)-1) |
| | #define CRED_TARGETNAME_ATTRIBUTE_NAME_W L"name" |
| | #define CRED_TARGETNAME_ATTRIBUTE_NAME_A "name" |
| | #define CRED_TARGETNAME_ATTRIBUTE_NAME_LENGTH (sizeof(CRED_TARGETNAME_ATTRIBUTE_ |
| | NAME_A)-1) |
| | #define CRED_TARGETNAME_ATTRIBUTE_BATCH_W L"batch" |
| | #define CRED_TARGETNAME_ATTRIBUTE_BATCH_A "batch" |
| | #define CRED_TARGETNAME_ATTRIBUTE_BATCH_LENGTH (sizeof(CRED_TARGETNAME_ATTRIBUTE |
| | _BATCH_A)-1) |
| | #define CRED_TARGETNAME_ATTRIBUTE_INTERACTIVE_W L"interactive" |
| | #define CRED_TARGETNAME_ATTRIBUTE_INTERACTIVE_A "interactive" |
| | #define CRED_TARGETNAME_ATTRIBUTE_INTERACTIVE_LENGTH (sizeof(CRED_TARGETNAME_ATT |
| | RIBUTE_INTERACTIVE_A)-1) |
| | #define CRED_TARGETNAME_ATTRIBUTE_SERVICE_W L"service" |
| | #define CRED_TARGETNAME_ATTRIBUTE_SERVICE_A "service" |
| | #define CRED_TARGETNAME_ATTRIBUTE_SERVICE_LENGTH (sizeof(CRED_TARGETNAME_ATTRIBU |
| | TE_SERVICE_A)-1) |
| | #define CRED_TARGETNAME_ATTRIBUTE_NETWORK_W L"network" |
| | #define CRED_TARGETNAME_ATTRIBUTE_NETWORK_A "network" |
| | #define CRED_TARGETNAME_ATTRIBUTE_NETWORK_LENGTH (sizeof(CRED_TARGETNAME_ATTRIBU |
| | TE_NETWORK_A)-1) |
| | #define CRED_TARGETNAME_ATTRIBUTE_NETWORKCLEARTEXT_W L"networkcleartext" |
| | #define CRED_TARGETNAME_ATTRIBUTE_NETWORKCLEARTEXT_A "networkcleartext" |
| | #define CRED_TARGETNAME_ATTRIBUTE_NETWORKCLEARTEXT_LENGTH (sizeof(CRED_TARGETNAM |
| | E_ATTRIBUTE_NETWORKCLEARTEXT_A)-1) |
| | #define CRED_TARGETNAME_ATTRIBUTE_REMOTEINTERACTIVE_W L"remoteinteractive" |
| | #define CRED_TARGETNAME_ATTRIBUTE_REMOTEINTERACTIVE_A "remoteinteractive" |
| | #define CRED_TARGETNAME_ATTRIBUTE_REMOTEINTERACTIVE_LENGTH (sizeof(CRED_TARGETNA |
| | ME_ATTRIBUTE_REMOTEINTERACTIVE_A)-1) |
| | #define CRED_TARGETNAME_ATTRIBUTE_CACHEDINTERACTIVE_W L"cachedinteractive" |
| | #define CRED_TARGETNAME_ATTRIBUTE_CACHEDINTERACTIVE_A "cachedinteractive" |
| | #define CRED_TARGETNAME_ATTRIBUTE_CACHEDINTERACTIVE_LENGTH (sizeof(CRED_TARGETNA |
| | ME_ATTRIBUTE_CACHEDINTERACTIVE_A)-1) |
| | |
#ifdef UNICODE | | #ifdef UNICODE |
#define CRED_SESSION_WILDCARD_NAME CRED_SESSION_WILDCARD_NAME_W | | #define CRED_SESSION_WILDCARD_NAME CRED_SESSION_WILDCARD_NAME_W |
|
| | #define CRED_TARGETNAME_DOMAIN_NAMESPACE CRED_TARGETNAME_DOMAIN_NAMESPACE_W |
| | #define CRED_UNIVERSAL_WILDCARD = CRED_UNIVERSAL_WILDCARD_W |
| | #define CRED_TARGETNAME_NAMESPACE_SEPERATOR = CRED_TARGETNAME_NAMESPACE_SEPERATO |
| | R_W |
| | #define CRED_TARGETNAME_ATTRIBUTE_SEPERATOR = CRED_TARGETNAME_ATTRIBUTE_SEPERATO |
| | R_W |
| | #define CRED_TARGETNAME_ATTRIBUTE_NAME CRED_TARGETNAME_ATTRIBUTE_NAME_W |
| | #define CRED_TARGETNAME_ATTRIBUTE_TARGET CRED_TARGETNAME_ATTRIBUTE_TARGET_W |
| | #define CRED_TARGETNAME_ATTRIBUTE_BATCH CRED_TARGETNAME_ATTRIBUTE_BATCH_W |
| | #define CRED_TARGETNAME_ATTRIBUTE_INTERACTIVE CRED_TARGETNAME_ATTRIBUTE_INTERACT |
| | IVE_W |
| | #define CRED_TARGETNAME_ATTRIBUTE_SERVICE CRED_TARGETNAME_ATTRIBUTE_SERVICE_W |
| | #define CRED_TARGETNAME_ATTRIBUTE_NETWORK CRED_TARGETNAME_ATTRIBUTE_NETWORK_W |
| | #define CRED_TARGETNAME_ATTRIBUTE_NETWORKCLEARTEXT CRED_TARGETNAME_ATTRIBUTE_NET |
| | WORKCLEARTEXT_W |
| | #define CRED_TARGETNAME_ATTRIBUTE_REMOTEINTERACTIVE CRED_TARGETNAME_ATTRIBUTE_RE |
| | MOTEINTERACTIVE_W |
| | #define CRED_TARGETNAME_ATTRIBUTE_CACHEDINTERACTIVE CRED_TARGETNAME_ATTRIBUTE_CA |
| | CHEDINTERACTIVE_W |
| | |
#else | | #else |
#define CRED_SESSION_WILDCARD_NAME CRED_SESSION_WILDCARD_NAME_A | | #define CRED_SESSION_WILDCARD_NAME CRED_SESSION_WILDCARD_NAME_A |
|
| | #define CRED_TARGETNAME_DOMAIN_NAMESPACE CRED_TARGETNAME_DOMAIN_NAMESPACE_A |
| | #define CRED_UNIVERSAL_WILDCARD = CRED_UNIVERSAL_WILDCARD_A |
| | #define CRED_TARGETNAME_NAMESPACE_SEPERATOR = CRED_TARGETNAME_NAMESPACE_SEPERATO |
| | R_A |
| | #define CRED_TARGETNAME_ATTRIBUTE_SEPERATOR = CRED_TARGETNAME_ATTRIBUTE_SEPERATO |
| | R_A |
| | #define CRED_TARGETNAME_ATTRIBUTE_NAME CRED_TARGETNAME_ATTRIBUTE_NAME_A |
| | #define CRED_TARGETNAME_ATTRIBUTE_TARGET CRED_TARGETNAME_ATTRIBUTE_TARGET_A |
| | #define CRED_TARGETNAME_ATTRIBUTE_BATCH CRED_TARGETNAME_ATTRIBUTE_BATCH_A |
| | #define CRED_TARGETNAME_ATTRIBUTE_INTERACTIVE CRED_TARGETNAME_ATTRIBUTE_INTERACT |
| | IVE_A |
| | #define CRED_TARGETNAME_ATTRIBUTE_SERVICE CRED_TARGETNAME_ATTRIBUTE_SERVICE_A |
| | #define CRED_TARGETNAME_ATTRIBUTE_NETWORK CRED_TARGETNAME_ATTRIBUTE_NETWORK_A |
| | #define CRED_TARGETNAME_ATTRIBUTE_NETWORKCLEARTEXT CRED_TARGETNAME_ATTRIBUTE_NET |
| | WORKCLEARTEXT_A |
| | #define CRED_TARGETNAME_ATTRIBUTE_REMOTEINTERACTIVE CRED_TARGETNAME_ATTRIBUTE_RE |
| | MOTEINTERACTIVE_A |
| | #define CRED_TARGETNAME_ATTRIBUTE_CACHEDINTERACTIVE CRED_TARGETNAME_ATTRIBUTE_CA |
| | CHEDINTERACTIVE_A |
#endif // UNICODE | | #endif // UNICODE |
| | |
// | | // |
|
| | // Add\Extract Logon type from flags |
| | // |
| | #define CRED_LOGON_TYPES_MASK 0xF000 // Mask to get logon types |
| | |
| | #define CredAppendLogonTypeToFlags(Flags, LogonType) (Flags) |= ((LogonType |
| | ) << 12) |
| | #define CredGetLogonTypeFromFlags(Flags) ((SECURITY_LOGON_TYPE) |
| | (((Flags) & CRED_LOGON_TYPES_MASK) >> 12)) |
| | #define CredRemoveLogonTypeFromFlags(Flags) (Flags) &= ~CRED_LOGON |
| | _TYPES_MASK |
| | |
| | // |
// Values of the Credential Flags field. | | // Values of the Credential Flags field. |
// | | // |
#define CRED_FLAGS_PASSWORD_FOR_CERT 0x0001 | | #define CRED_FLAGS_PASSWORD_FOR_CERT 0x0001 |
#define CRED_FLAGS_PROMPT_NOW 0x0002 | | #define CRED_FLAGS_PROMPT_NOW 0x0002 |
#define CRED_FLAGS_USERNAME_TARGET 0x0004 | | #define CRED_FLAGS_USERNAME_TARGET 0x0004 |
#define CRED_FLAGS_OWF_CRED_BLOB 0x0008 | | #define CRED_FLAGS_OWF_CRED_BLOB 0x0008 |
|
#define CRED_FLAGS_VALID_FLAGS 0x000F // Mask of all valid flags | | #define CRED_FLAGS_REQUIRE_CONFIRMATION 0x0010 |
| | #define CRED_FLAGS_VALID_FLAGS 0xF01F // Mask of all valid flags |
| | |
// | | // |
// Values of the Credential Type field. | | // Values of the Credential Type field. |
// | | // |
#define CRED_TYPE_GENERIC 1 | | #define CRED_TYPE_GENERIC 1 |
#define CRED_TYPE_DOMAIN_PASSWORD 2 | | #define CRED_TYPE_DOMAIN_PASSWORD 2 |
#define CRED_TYPE_DOMAIN_CERTIFICATE 3 | | #define CRED_TYPE_DOMAIN_CERTIFICATE 3 |
#define CRED_TYPE_DOMAIN_VISIBLE_PASSWORD 4 | | #define CRED_TYPE_DOMAIN_VISIBLE_PASSWORD 4 |
|
#define CRED_TYPE_MAXIMUM 5 // Maximum supported cred type | | #define CRED_TYPE_GENERIC_CERTIFICATE 5 |
| | #define CRED_TYPE_MAXIMUM 6 // Maximum supported cred type |
#define CRED_TYPE_MAXIMUM_EX (CRED_TYPE_MAXIMUM+1000) // Allow new application
s to run on old OSes | | #define CRED_TYPE_MAXIMUM_EX (CRED_TYPE_MAXIMUM+1000) // Allow new application
s to run on old OSes |
| | |
// | | // |
// Maximum size of the CredBlob field (in bytes) | | // Maximum size of the CredBlob field (in bytes) |
// | | // |
#define CRED_MAX_CREDENTIAL_BLOB_SIZE 512 | | #define CRED_MAX_CREDENTIAL_BLOB_SIZE 512 |
| | |
// | | // |
// Values of the Credential Persist field | | // Values of the Credential Persist field |
// | | // |
| | |
skipping to change at line 317 | | skipping to change at line 401 |
// | | // |
// A credential | | // A credential |
// | | // |
typedef struct _CREDENTIALA { | | typedef struct _CREDENTIALA { |
DWORD Flags; | | DWORD Flags; |
DWORD Type; | | DWORD Type; |
LPSTR TargetName; | | LPSTR TargetName; |
LPSTR Comment; | | LPSTR Comment; |
FILETIME LastWritten; | | FILETIME LastWritten; |
DWORD CredentialBlobSize; | | DWORD CredentialBlobSize; |
|
LPBYTE CredentialBlob; | | __field_bcount(CredentialBlobSize) LPBYTE CredentialBlob; |
DWORD Persist; | | DWORD Persist; |
DWORD AttributeCount; | | DWORD AttributeCount; |
PCREDENTIAL_ATTRIBUTEA Attributes; | | PCREDENTIAL_ATTRIBUTEA Attributes; |
LPSTR TargetAlias; | | LPSTR TargetAlias; |
LPSTR UserName; | | LPSTR UserName; |
} CREDENTIALA, *PCREDENTIALA; | | } CREDENTIALA, *PCREDENTIALA; |
| | |
typedef struct _CREDENTIALW { | | typedef struct _CREDENTIALW { |
DWORD Flags; | | DWORD Flags; |
DWORD Type; | | DWORD Type; |
#ifdef MIDL_PASS | | #ifdef MIDL_PASS |
|
[string] wchar_t *TargetName; | | [string,max_is(CRED_MAX_GENERIC_TARGET_NAME_LENGTH-1)] wchar_t *TargetName; |
#else // MIDL_PASS | | #else // MIDL_PASS |
LPWSTR TargetName; | | LPWSTR TargetName; |
#endif // MIDL_PASS | | #endif // MIDL_PASS |
#ifdef MIDL_PASS | | #ifdef MIDL_PASS |
|
[string] wchar_t *Comment; | | [string,max_is(CRED_MAX_STRING_LENGTH-1)] wchar_t *Comment; |
#else // MIDL_PASS | | #else // MIDL_PASS |
LPWSTR Comment; | | LPWSTR Comment; |
#endif // MIDL_PASS | | #endif // MIDL_PASS |
FILETIME LastWritten; | | FILETIME LastWritten; |
#ifdef MIDL_PASS | | #ifdef MIDL_PASS |
[range(0,CRED_MAX_CREDENTIAL_BLOB_SIZE)] | | [range(0,CRED_MAX_CREDENTIAL_BLOB_SIZE)] |
#endif // MIDL_PASS | | #endif // MIDL_PASS |
DWORD CredentialBlobSize; | | DWORD CredentialBlobSize; |
#ifdef MIDL_PASS | | #ifdef MIDL_PASS |
[size_is(CredentialBlobSize)] | | [size_is(CredentialBlobSize)] |
| | |
skipping to change at line 357 | | skipping to change at line 441 |
DWORD Persist; | | DWORD Persist; |
#ifdef MIDL_PASS | | #ifdef MIDL_PASS |
[range(0,CRED_MAX_ATTRIBUTES)] | | [range(0,CRED_MAX_ATTRIBUTES)] |
#endif // MIDL_PASS | | #endif // MIDL_PASS |
DWORD AttributeCount; | | DWORD AttributeCount; |
#ifdef MIDL_PASS | | #ifdef MIDL_PASS |
[size_is(AttributeCount)] | | [size_is(AttributeCount)] |
#endif // MIDL_PASS | | #endif // MIDL_PASS |
PCREDENTIAL_ATTRIBUTEW Attributes; | | PCREDENTIAL_ATTRIBUTEW Attributes; |
#ifdef MIDL_PASS | | #ifdef MIDL_PASS |
|
[string] wchar_t *TargetAlias; | | [string,max_is(CRED_MAX_STRING_LENGTH-1)] wchar_t *TargetAlias; |
#else // MIDL_PASS | | #else // MIDL_PASS |
LPWSTR TargetAlias; | | LPWSTR TargetAlias; |
#endif // MIDL_PASS | | #endif // MIDL_PASS |
#ifdef MIDL_PASS | | #ifdef MIDL_PASS |
|
[string] wchar_t *UserName; | | [string,max_is(CRED_MAX_USERNAME_LENGTH-1)] wchar_t *UserName; |
#else // MIDL_PASS | | #else // MIDL_PASS |
LPWSTR UserName; | | LPWSTR UserName; |
#endif // MIDL_PASS | | #endif // MIDL_PASS |
} CREDENTIALW, *PCREDENTIALW; | | } CREDENTIALW, *PCREDENTIALW; |
| | |
#ifdef UNICODE | | #ifdef UNICODE |
typedef CREDENTIALW CREDENTIAL; | | typedef CREDENTIALW CREDENTIAL; |
typedef PCREDENTIALW PCREDENTIAL; | | typedef PCREDENTIALW PCREDENTIAL; |
#else | | #else |
typedef CREDENTIALA CREDENTIAL; | | typedef CREDENTIALA CREDENTIAL; |
| | |
skipping to change at line 386 | | skipping to change at line 470 |
// | | // |
// Value of the Flags field in CREDENTIAL_TARGET_INFORMATION | | // Value of the Flags field in CREDENTIAL_TARGET_INFORMATION |
// | | // |
| | |
#define CRED_TI_SERVER_FORMAT_UNKNOWN 0x0001 // Don't know if server name is
DNS or netbios format | | #define CRED_TI_SERVER_FORMAT_UNKNOWN 0x0001 // Don't know if server name is
DNS or netbios format |
#define CRED_TI_DOMAIN_FORMAT_UNKNOWN 0x0002 // Don't know if domain name is
DNS or netbios format | | #define CRED_TI_DOMAIN_FORMAT_UNKNOWN 0x0002 // Don't know if domain name is
DNS or netbios format |
#define CRED_TI_ONLY_PASSWORD_REQUIRED 0x0004 // Server only requires a passwo
rd and not a username | | #define CRED_TI_ONLY_PASSWORD_REQUIRED 0x0004 // Server only requires a passwo
rd and not a username |
#define CRED_TI_USERNAME_TARGET 0x0008 // TargetName is username | | #define CRED_TI_USERNAME_TARGET 0x0008 // TargetName is username |
#define CRED_TI_CREATE_EXPLICIT_CRED 0x0010 // When creating a cred, create
one named TargetInfo->TargetName | | #define CRED_TI_CREATE_EXPLICIT_CRED 0x0010 // When creating a cred, create
one named TargetInfo->TargetName |
#define CRED_TI_WORKGROUP_MEMBER 0x0020 // Indicates the machine is a me
mber of a workgroup | | #define CRED_TI_WORKGROUP_MEMBER 0x0020 // Indicates the machine is a me
mber of a workgroup |
|
#define CRED_TI_VALID_FLAGS 0x003F | | #define CRED_TI_VALID_FLAGS 0xF07F |
| | |
// | | // |
// A credential target | | // A credential target |
// | | // |
| | |
typedef struct _CREDENTIAL_TARGET_INFORMATIONA { | | typedef struct _CREDENTIAL_TARGET_INFORMATIONA { |
LPSTR TargetName; | | LPSTR TargetName; |
LPSTR NetbiosServerName; | | LPSTR NetbiosServerName; |
LPSTR DnsServerName; | | LPSTR DnsServerName; |
LPSTR NetbiosDomainName; | | LPSTR NetbiosDomainName; |
LPSTR DnsDomainName; | | LPSTR DnsDomainName; |
LPSTR DnsTreeName; | | LPSTR DnsTreeName; |
LPSTR PackageName; | | LPSTR PackageName; |
ULONG Flags; | | ULONG Flags; |
DWORD CredTypeCount; | | DWORD CredTypeCount; |
LPDWORD CredTypes; | | LPDWORD CredTypes; |
} CREDENTIAL_TARGET_INFORMATIONA, *PCREDENTIAL_TARGET_INFORMATIONA; | | } CREDENTIAL_TARGET_INFORMATIONA, *PCREDENTIAL_TARGET_INFORMATIONA; |
| | |
typedef struct _CREDENTIAL_TARGET_INFORMATIONW { | | typedef struct _CREDENTIAL_TARGET_INFORMATIONW { |
#ifdef MIDL_PASS | | #ifdef MIDL_PASS |
|
[string] wchar_t *TargetName; | | [string,max_is(CRED_MAX_DOMAIN_TARGET_NAME_LENGTH-1)] wchar_t *TargetName; |
[string] wchar_t *NetbiosServerName; | | [string,max_is(CRED_MAX_DOMAIN_TARGET_NAME_LENGTH-1)] wchar_t *NetbiosServer |
[string] wchar_t *DnsServerName; | | Name; |
[string] wchar_t *NetbiosDomainName; | | [string,max_is(CRED_MAX_DOMAIN_TARGET_NAME_LENGTH-1)] wchar_t *DnsServerName |
[string] wchar_t *DnsDomainName; | | ; |
[string] wchar_t *DnsTreeName; | | [string,max_is(CRED_MAX_DOMAIN_TARGET_NAME_LENGTH-1)] wchar_t *NetbiosDomain |
[string] wchar_t *PackageName; | | Name; |
| | [string,max_is(CRED_MAX_DOMAIN_TARGET_NAME_LENGTH-1)] wchar_t *DnsDomainName |
| | ; |
| | [string,max_is(CRED_MAX_DOMAIN_TARGET_NAME_LENGTH-1)] wchar_t *DnsTreeName; |
| | [string,max_is(CRED_MAX_STRING_LENGTH-1)] wchar_t *PackageName; |
#else // MIDL_PASS | | #else // MIDL_PASS |
LPWSTR TargetName; | | LPWSTR TargetName; |
LPWSTR NetbiosServerName; | | LPWSTR NetbiosServerName; |
LPWSTR DnsServerName; | | LPWSTR DnsServerName; |
LPWSTR NetbiosDomainName; | | LPWSTR NetbiosDomainName; |
LPWSTR DnsDomainName; | | LPWSTR DnsDomainName; |
LPWSTR DnsTreeName; | | LPWSTR DnsTreeName; |
LPWSTR PackageName; | | LPWSTR PackageName; |
#endif // MIDL_PASS | | #endif // MIDL_PASS |
ULONG Flags; | | ULONG Flags; |
| | |
skipping to change at line 468 | | skipping to change at line 552 |
// | | // |
// This credential can be pass to LsaLogonUser to ask it to find a credential wi
th a | | // This credential can be pass to LsaLogonUser to ask it to find a credential wi
th a |
// TargetName of UserName. | | // TargetName of UserName. |
// | | // |
| | |
typedef struct _USERNAME_TARGET_CREDENTIAL_INFO { | | typedef struct _USERNAME_TARGET_CREDENTIAL_INFO { |
LPWSTR UserName; | | LPWSTR UserName; |
} USERNAME_TARGET_CREDENTIAL_INFO, *PUSERNAME_TARGET_CREDENTIAL_INFO; | | } USERNAME_TARGET_CREDENTIAL_INFO, *PUSERNAME_TARGET_CREDENTIAL_INFO; |
| | |
// | | // |
|
| | // Marshaled credential blob information. |
| | // |
| | |
| | typedef struct _BINARY_BLOB_CREDENTIAL_INFO { |
| | ULONG cbBlob; |
| | LPBYTE pbBlob; |
| | } BINARY_BLOB_CREDENTIAL_INFO, *PBINARY_BLOB_CREDENTIAL_INFO; |
| | |
| | // |
// Credential type for credential marshaling routines | | // Credential type for credential marshaling routines |
// | | // |
| | |
typedef enum _CRED_MARSHAL_TYPE { | | typedef enum _CRED_MARSHAL_TYPE { |
CertCredential = 1, | | CertCredential = 1, |
|
UsernameTargetCredential | | UsernameTargetCredential, |
| | BinaryBlobCredential |
} CRED_MARSHAL_TYPE, *PCRED_MARSHAL_TYPE; | | } CRED_MARSHAL_TYPE, *PCRED_MARSHAL_TYPE; |
| | |
// | | // |
|
| | // Protection type for credential providers secret protection routines |
| | // |
| | |
| | typedef enum _CRED_PROTECTION_TYPE { |
| | CredUnprotected, |
| | CredUserProtection, |
| | CredTrustedProtection |
| | } CRED_PROTECTION_TYPE, *PCRED_PROTECTION_TYPE; |
| | |
| | // |
| | // Values for authentication buffers packing |
| | // |
| | #define CRED_PACK_PROTECTED_CREDENTIALS 0x1 |
| | #define CRED_PACK_WOW_BUFFER 0x2 |
| | #define CRED_PACK_GENERIC_CREDENTIALS 0x4 |
| | |
| | // |
// Credential UI info | | // Credential UI info |
// | | // |
| | |
typedef struct _CREDUI_INFOA | | typedef struct _CREDUI_INFOA |
{ | | { |
DWORD cbSize; | | DWORD cbSize; |
HWND hwndParent; | | HWND hwndParent; |
PCSTR pszMessageText; | | PCSTR pszMessageText; |
PCSTR pszCaptionText; | | PCSTR pszCaptionText; |
HBITMAP hbmBanner; | | HBITMAP hbmBanner; |
| | |
skipping to change at line 561 | | skipping to change at line 672 |
CREDUI_FLAGS_ALWAYS_SHOW_UI | \ | | CREDUI_FLAGS_ALWAYS_SHOW_UI | \ |
CREDUI_FLAGS_REQUIRE_SMARTCARD | \ | | CREDUI_FLAGS_REQUIRE_SMARTCARD | \ |
CREDUI_FLAGS_PASSWORD_ONLY_OK | \ | | CREDUI_FLAGS_PASSWORD_ONLY_OK | \ |
CREDUI_FLAGS_VALIDATE_USERNAME | \ | | CREDUI_FLAGS_VALIDATE_USERNAME | \ |
CREDUI_FLAGS_COMPLETE_USERNAME | \ | | CREDUI_FLAGS_COMPLETE_USERNAME | \ |
CREDUI_FLAGS_PERSIST | \ | | CREDUI_FLAGS_PERSIST | \ |
CREDUI_FLAGS_SERVER_CREDENTIAL | \ | | CREDUI_FLAGS_SERVER_CREDENTIAL | \ |
CREDUI_FLAGS_EXPECT_CONFIRMATION | \ | | CREDUI_FLAGS_EXPECT_CONFIRMATION | \ |
CREDUI_FLAGS_GENERIC_CREDENTIALS | \ | | CREDUI_FLAGS_GENERIC_CREDENTIALS | \ |
CREDUI_FLAGS_USERNAME_TARGET_CREDENTIALS | \ | | CREDUI_FLAGS_USERNAME_TARGET_CREDENTIALS | \ |
|
CREDUI_FLAGS_KEEP_USERNAME ) | | CREDUI_FLAGS_KEEP_USERNAME ) |
| | |
| | // |
| | // Flags for CredUIPromptForWindowsCredentials and CPUS_CREDUI Usage Scenarios |
| | // |
| | |
| | #define CREDUIWIN_GENERIC 0x00000001 // Plain text username/p |
| | assword is being requested |
| | #define CREDUIWIN_CHECKBOX 0x00000002 // Show the Save Credent |
| | ial checkbox |
| | #define CREDUIWIN_AUTHPACKAGE_ONLY 0x00000010 // Only Cred Providers t |
| | hat support the input auth package should enumerate |
| | #define CREDUIWIN_IN_CRED_ONLY 0x00000020 // Only the incoming cre |
| | d for the specific auth package should be enumerated |
| | #define CREDUIWIN_ENUMERATE_ADMINS 0x00000100 // Cred Providers should |
| | enumerate administrators only |
| | #define CREDUIWIN_ENUMERATE_CURRENT_USER 0x00000200 // Only the incoming cre |
| | d for the specific auth package should be enumerated |
| | #define CREDUIWIN_PACK_32_WOW 0x10000000 // Tell the credential p |
| | rovider it should be packing its Auth Blob 32 bit even though it is running 64 n |
| | ative |
| | |
| | #define CREDUIWIN_VALID_FLAGS ( \ |
| | CREDUIWIN_GENERIC | \ |
| | CREDUIWIN_CHECKBOX | \ |
| | CREDUIWIN_AUTHPACKAGE_ONLY | \ |
| | CREDUIWIN_IN_CRED_ONLY | \ |
| | CREDUIWIN_ENUMERATE_ADMINS | \ |
| | CREDUIWIN_ENUMERATE_CURRENT_USER | \ |
| | CREDUIWIN_PACK_32_WOW ) |
| | |
//----------------------------------------------------------------------------- | | //----------------------------------------------------------------------------- |
// Functions | | // Functions |
//----------------------------------------------------------------------------- | | //----------------------------------------------------------------------------- |
| | |
// | | // |
// Values of flags to CredWrite and CredWriteDomainCredentials | | // Values of flags to CredWrite and CredWriteDomainCredentials |
// | | // |
| | |
#define CRED_PRESERVE_CREDENTIAL_BLOB 0x1 | | #define CRED_PRESERVE_CREDENTIAL_BLOB 0x1 |
| | |
skipping to change at line 621 | | skipping to change at line 753 |
__reserved DWORD Flags, | | __reserved DWORD Flags, |
__out PCREDENTIALA *Credential | | __out PCREDENTIALA *Credential |
); | | ); |
| | |
#ifdef UNICODE | | #ifdef UNICODE |
#define CredRead CredReadW | | #define CredRead CredReadW |
#else | | #else |
#define CredRead CredReadA | | #define CredRead CredReadA |
#endif // UNICODE | | #endif // UNICODE |
| | |
|
| | // |
| | // Values of flags to CredEnumerate |
| | // |
| | |
| | #define CRED_ENUMERATE_ALL_CREDENTIALS 0x1 |
| | |
WINADVAPI | | WINADVAPI |
BOOL | | BOOL |
WINAPI | | WINAPI |
CredEnumerateW ( | | CredEnumerateW ( |
|
__in LPCWSTR Filter, | | __in_opt LPCWSTR Filter, |
__reserved DWORD Flags, | | __reserved DWORD Flags, |
__out DWORD *Count, | | __out DWORD *Count, |
__deref_out_ecount(*Count) PCREDENTIALW **Credential | | __deref_out_ecount(*Count) PCREDENTIALW **Credential |
); | | ); |
| | |
WINADVAPI | | WINADVAPI |
BOOL | | BOOL |
WINAPI | | WINAPI |
CredEnumerateA ( | | CredEnumerateA ( |
|
__in LPCSTR Filter, | | __in_opt LPCSTR Filter, |
__reserved DWORD Flags, | | __reserved DWORD Flags, |
__out DWORD *Count, | | __out DWORD *Count, |
__deref_out_ecount(*Count) PCREDENTIALA **Credential | | __deref_out_ecount(*Count) PCREDENTIALA **Credential |
); | | ); |
| | |
#ifdef UNICODE | | #ifdef UNICODE |
#define CredEnumerate CredEnumerateW | | #define CredEnumerate CredEnumerateW |
#else | | #else |
#define CredEnumerate CredEnumerateA | | #define CredEnumerate CredEnumerateA |
#endif // UNICODE | | #endif // UNICODE |
| | |
skipping to change at line 851 | | skipping to change at line 989 |
CredIsMarshaledCredentialA( | | CredIsMarshaledCredentialA( |
__in LPCSTR MarshaledCredential | | __in LPCSTR MarshaledCredential |
); | | ); |
| | |
#ifdef UNICODE | | #ifdef UNICODE |
#define CredIsMarshaledCredential CredIsMarshaledCredentialW | | #define CredIsMarshaledCredential CredIsMarshaledCredentialW |
#else | | #else |
#define CredIsMarshaledCredential CredIsMarshaledCredentialA | | #define CredIsMarshaledCredential CredIsMarshaledCredentialA |
#endif // UNICODE | | #endif // UNICODE |
| | |
|
| | CREDUIAPI |
| | BOOL |
| | WINAPI |
| | CredUnPackAuthenticationBufferW( |
| | __in DWORD dwFlags, |
| | __in_bcount(cbAuthBuffer) PVOID pAuthBuffer, |
| | __in DWORD cbAuthBuffer, |
| | __out_ecount_opt(*pcchMaxUserName) LPWSTR pszUserName, |
| | __inout DWORD* pcchMaxUserName, |
| | __out_ecount_opt(*pcchMaxDomainName) LPWSTR pszDomainName, |
| | __inout_opt DWORD* pcchMaxDomainName, |
| | __out_ecount_opt(*pcchMaxPassword) LPWSTR pszPassword, |
| | __inout DWORD* pcchMaxPassword |
| | ); |
| | |
| | CREDUIAPI |
| | BOOL |
| | WINAPI |
| | CredUnPackAuthenticationBufferA( |
| | __in DWORD dwFlags, |
| | __in_bcount(cbAuthBuffer) PVOID pAuthBuffer, |
| | __in DWORD cbAuthBuffer, |
| | __out_ecount_opt(*pcchMaxUserName) LPSTR pszUserName, |
| | __inout DWORD* pcchlMaxUserName, |
| | __out_ecount_opt(*pcchMaxDomainName) LPSTR pszDomainName, |
| | __inout_opt DWORD* pcchMaxDomainName, |
| | __out_ecount_opt(*pcchMaxPassword) LPSTR pszPassword, |
| | __inout DWORD* pcchMaxPassword |
| | ); |
| | |
| | #ifdef UNICODE |
| | #define CredUnPackAuthenticationBuffer CredUnPackAuthenticationBufferW |
| | #else |
| | #define CredUnPackAuthenticationBuffer CredUnPackAuthenticationBufferA |
| | #endif //UNICODE |
| | |
| | CREDUIAPI |
| | BOOL |
| | WINAPI |
| | CredPackAuthenticationBufferW( |
| | __in DWORD dwFlags, |
| | __in LPWSTR pszUserName, |
| | __in LPWSTR pszPassword, |
| | __out_bcount_opt(*pcbPackedCredentials) PBYTE pPackedCredentials, |
| | __inout DWORD* pcbPackedCredentials |
| | ); |
| | |
| | CREDUIAPI |
| | BOOL |
| | WINAPI |
| | CredPackAuthenticationBufferA( |
| | __in DWORD dwFlags, |
| | __in LPSTR pszUserName, |
| | __in LPSTR pszPassword, |
| | __out_bcount_opt(*pcbPackedCredentials) PBYTE pPackedCredentials, |
| | __inout DWORD* pcbPackedCredentials |
| | ); |
| | |
| | #ifdef UNICODE |
| | #define CredPackAuthenticationBuffer CredPackAuthenticationBufferW |
| | #else |
| | #define CredPackAuthenticationBuffer CredPackAuthenticationBufferA |
| | #endif //UNICODE |
| | |
| | WINADVAPI |
| | BOOL |
| | WINAPI |
| | CredProtectW( |
| | __in BOOL fAsSelf, |
| | __in_ecount(cchCredentials) LPWSTR pszCredentials, |
| | __in DWORD cchCredentials, |
| | __out_ecount(*pcchMaxChars) LPWSTR pszProtectedCredentials, |
| | __inout DWORD* pcchMaxChars, |
| | __out_opt CRED_PROTECTION_TYPE* ProtectionType |
| | ); |
| | |
| | WINADVAPI |
| | BOOL |
| | WINAPI |
| | CredProtectA( |
| | __in BOOL fAsSelf, |
| | __in_ecount(cchCredentials) LPSTR pszCredentials, |
| | __in DWORD cchCredentials, |
| | __out_ecount(*pcchMaxChars) LPSTR pszProtectedCredentials, |
| | __inout DWORD* pcchMaxChars, |
| | __out_opt CRED_PROTECTION_TYPE* ProtectionType |
| | ); |
| | |
| | #ifdef UNICODE |
| | #define CredProtect CredProtectW |
| | #else |
| | #define CredProtect CredProtectA |
| | #endif //UNICODE |
| | |
| | WINADVAPI |
| | BOOL |
| | WINAPI |
| | CredUnprotectW( |
| | __in BOOL fAsSelf, |
| | __in_ecount(cchProtectedCredentials) LPWSTR pszProtectedCredentials, |
| | __in DWORD cchProtectedCredentials, |
| | __out_ecount(*pcchMaxChars) LPWSTR pszCredentials, |
| | __inout DWORD* pcchMaxChars |
| | ); |
| | |
| | WINADVAPI |
| | BOOL |
| | WINAPI |
| | CredUnprotectA( |
| | __in BOOL fAsSelf, |
| | __in_ecount(cchProtectedCredentials) LPSTR pszProtectedCredentials, |
| | __in DWORD cchProtectedCredentials, |
| | __out_ecount(*pcchMaxChars) LPSTR pszCredentials, |
| | __inout DWORD* pcchMaxChars |
| | ); |
| | |
| | #ifdef UNICODE |
| | #define CredUnprotect CredUnprotectW |
| | #else |
| | #define CredUnprotect CredUnprotectA |
| | #endif //UNICODE |
| | |
| | WINADVAPI |
| | BOOL |
| | WINAPI |
| | CredIsProtectedW( |
| | __in LPWSTR pszProtectedCredentials, |
| | __out CRED_PROTECTION_TYPE* pProtectionType |
| | ); |
| | |
| | WINADVAPI |
| | BOOL |
| | WINAPI |
| | CredIsProtectedA( |
| | __in LPSTR pszProtectedCredentials, |
| | __out CRED_PROTECTION_TYPE* pProtectionType |
| | ); |
| | |
| | #ifdef UNICODE |
| | #define CredIsProtected CredIsProtectedW |
| | #else |
| | #define CredIsProtected CredIsProtectedA |
| | #endif //UNICODE |
| | |
| | WINADVAPI |
| | BOOL |
| | WINAPI |
| | CredFindBestCredentialW ( |
| | IN LPCWSTR TargetName, |
| | IN DWORD Type, |
| | IN DWORD Flags, |
| | OUT PCREDENTIALW *Credential |
| | ); |
| | |
| | WINADVAPI |
| | BOOL |
| | WINAPI |
| | CredFindBestCredentialA ( |
| | IN LPCSTR TargetName, |
| | IN DWORD Type, |
| | IN DWORD Flags, |
| | OUT PCREDENTIALA *Credential |
| | ); |
| | |
| | #ifdef UNICODE |
| | #define CredFindBestCredential CredFindBestCredentialW |
| | #else |
| | #define CredFindBestCredential CredFindBestCredentialA |
| | #endif // UNICODE |
| | |
WINADVAPI | | WINADVAPI |
BOOL | | BOOL |
WINAPI | | WINAPI |
CredGetSessionTypes ( | | CredGetSessionTypes ( |
__in DWORD MaximumPersistCount, | | __in DWORD MaximumPersistCount, |
__out LPDWORD MaximumPersist | | __out LPDWORD MaximumPersist |
); | | ); |
| | |
WINADVAPI | | WINADVAPI |
VOID | | VOID |
| | |
skipping to change at line 874 | | skipping to change at line 1182 |
); | | ); |
| | |
CREDUIAPI | | CREDUIAPI |
DWORD | | DWORD |
WINAPI | | WINAPI |
CredUIPromptForCredentialsW( | | CredUIPromptForCredentialsW( |
__in_opt PCREDUI_INFOW pUiInfo, | | __in_opt PCREDUI_INFOW pUiInfo, |
__in_opt PCWSTR pszTargetName, | | __in_opt PCWSTR pszTargetName, |
__reserved PCtxtHandle pContext, | | __reserved PCtxtHandle pContext, |
__in DWORD dwAuthError, | | __in DWORD dwAuthError, |
|
__out_ecount(ulUserNameBufferSize) PWSTR pszUserName, | | __inout_ecount(ulUserNameBufferSize) PWSTR pszUserName, |
__in ULONG ulUserNameBufferSize, | | __in ULONG ulUserNameBufferSize, |
|
__out_ecount(ulPasswordBufferSize) PWSTR pszPassword, | | __inout_ecount(ulPasswordBufferSize) PWSTR pszPassword, |
__in ULONG ulPasswordBufferSize, | | __in ULONG ulPasswordBufferSize, |
__inout_opt BOOL *save, | | __inout_opt BOOL *save, |
__in DWORD dwFlags | | __in DWORD dwFlags |
); | | ); |
| | |
CREDUIAPI | | CREDUIAPI |
DWORD | | DWORD |
WINAPI | | WINAPI |
CredUIPromptForCredentialsA( | | CredUIPromptForCredentialsA( |
__in_opt PCREDUI_INFOA pUiInfo, | | __in_opt PCREDUI_INFOA pUiInfo, |
__in_opt PCSTR pszTargetName, | | __in_opt PCSTR pszTargetName, |
__reserved PCtxtHandle pContext, | | __reserved PCtxtHandle pContext, |
__in DWORD dwAuthError, | | __in DWORD dwAuthError, |
|
__out_ecount(ulUserNameBufferSize) PSTR pszUserName, | | __inout_ecount(ulUserNameBufferSize) PSTR pszUserName, |
__in ULONG ulUserNameBufferSize, | | __in ULONG ulUserNameBufferSize, |
|
__out_ecount(ulPasswordBufferSize) PSTR pszPassword, | | __inout_ecount(ulPasswordBufferSize) PSTR pszPassword, |
__in ULONG ulPasswordBufferSize, | | __in ULONG ulPasswordBufferSize, |
__inout_opt BOOL *save, | | __inout_opt BOOL *save, |
__in DWORD dwFlags | | __in DWORD dwFlags |
); | | ); |
| | |
#ifdef UNICODE | | #ifdef UNICODE |
#define CredUIPromptForCredentials CredUIPromptForCredentialsW | | #define CredUIPromptForCredentials CredUIPromptForCredentialsW |
#else | | #else |
#define CredUIPromptForCredentials CredUIPromptForCredentialsA | | #define CredUIPromptForCredentials CredUIPromptForCredentialsA |
#endif | | #endif |
| | |
CREDUIAPI | | CREDUIAPI |
DWORD | | DWORD |
WINAPI | | WINAPI |
|
| | CredUIPromptForWindowsCredentialsW( |
| | __in_opt PCREDUI_INFOW pUiInfo, |
| | __in DWORD dwAuthError, |
| | __inout ULONG *pulAuthPackage, |
| | __in_bcount_opt(ulInAuthBufferSize) LPCVOID pvInAuthBuffer, |
| | __in ULONG ulInAuthBufferSize, |
| | __deref_out_bcount_full(*pulOutAuthBufferSize) LPVOID * ppvOutAuthBuffer, |
| | __out ULONG * pulOutAuthBufferSize, |
| | __inout_opt BOOL *pfSave, |
| | __in DWORD dwFlags |
| | ); |
| | |
| | CREDUIAPI |
| | DWORD |
| | WINAPI |
| | CredUIPromptForWindowsCredentialsA( |
| | __in_opt PCREDUI_INFOA pUiInfo, |
| | __in DWORD dwAuthError, |
| | __inout ULONG *pulAuthPackage, |
| | __in_bcount_opt(ulInAuthBufferSize) LPCVOID pvInAuthBuffer, |
| | __in ULONG ulInAuthBufferSize, |
| | __deref_out_bcount_full(*pulOutAuthBufferSize) LPVOID * ppvOutAuthBuffer, |
| | __out ULONG * pulOutAuthBufferSize, |
| | __inout_opt BOOL *pfSave, |
| | __in DWORD dwFlags |
| | ); |
| | |
| | #ifdef UNICODE |
| | #define CredUIPromptForWindowsCredentials CredUIPromptForWindowsCredentialsW |
| | #else |
| | #define CredUIPromptForWindowsCredentials CredUIPromptForWindowsCredentialsA |
| | #endif |
| | |
| | CREDUIAPI |
| | DWORD |
| | WINAPI |
CredUIParseUserNameW( | | CredUIParseUserNameW( |
__in CONST WCHAR *UserName, | | __in CONST WCHAR *UserName, |
__out_ecount(userBufferSize) WCHAR *user, | | __out_ecount(userBufferSize) WCHAR *user, |
__in ULONG userBufferSize, | | __in ULONG userBufferSize, |
__out_ecount(domainBufferSize) WCHAR *domain, | | __out_ecount(domainBufferSize) WCHAR *domain, |
__in ULONG domainBufferSize | | __in ULONG domainBufferSize |
); | | ); |
| | |
CREDUIAPI | | CREDUIAPI |
DWORD | | DWORD |
| | |
skipping to change at line 939 | | skipping to change at line 1283 |
#define CredUIParseUserName CredUIParseUserNameA | | #define CredUIParseUserName CredUIParseUserNameA |
#endif | | #endif |
| | |
CREDUIAPI | | CREDUIAPI |
DWORD | | DWORD |
WINAPI | | WINAPI |
CredUICmdLinePromptForCredentialsW( | | CredUICmdLinePromptForCredentialsW( |
__in_opt PCWSTR pszTargetName, | | __in_opt PCWSTR pszTargetName, |
__reserved PCtxtHandle pContext, | | __reserved PCtxtHandle pContext, |
__in DWORD dwAuthError, | | __in DWORD dwAuthError, |
|
__out_ecount(ulUserBufferSize) PWSTR UserName, | | __inout_ecount(ulUserBufferSize) PWSTR UserName, |
__in ULONG ulUserBufferSize, | | __in ULONG ulUserBufferSize, |
|
__out_ecount(ulPasswordBufferSize) PWSTR pszPassword, | | __inout_ecount(ulPasswordBufferSize) PWSTR pszPassword, |
__in ULONG ulPasswordBufferSize, | | __in ULONG ulPasswordBufferSize, |
__inout_opt PBOOL pfSave, | | __inout_opt PBOOL pfSave, |
__in DWORD dwFlags | | __in DWORD dwFlags |
); | | ); |
| | |
CREDUIAPI | | CREDUIAPI |
DWORD | | DWORD |
WINAPI | | WINAPI |
CredUICmdLinePromptForCredentialsA( | | CredUICmdLinePromptForCredentialsA( |
__in_opt PCSTR pszTargetName, | | __in_opt PCSTR pszTargetName, |
__reserved PCtxtHandle pContext, | | __reserved PCtxtHandle pContext, |
__in DWORD dwAuthError, | | __in DWORD dwAuthError, |
|
__out_ecount(ulUserBufferSize) PSTR UserName, | | __inout_ecount(ulUserBufferSize) PSTR UserName, |
__in ULONG ulUserBufferSize, | | __in ULONG ulUserBufferSize, |
|
__out_ecount(ulPasswordBufferSize) PSTR pszPassword, | | __inout_ecount(ulPasswordBufferSize) PSTR pszPassword, |
__in ULONG ulPasswordBufferSize, | | __in ULONG ulPasswordBufferSize, |
__inout_opt PBOOL pfSave, | | __inout_opt PBOOL pfSave, |
__in DWORD dwFlags | | __in DWORD dwFlags |
); | | ); |
| | |
#ifdef UNICODE | | #ifdef UNICODE |
#define CredUICmdLinePromptForCredentials CredUICmdLinePromptForCredentialsW | | #define CredUICmdLinePromptForCredentials CredUICmdLinePromptForCredentialsW |
#else | | #else |
#define CredUICmdLinePromptForCredentials CredUICmdLinePromptForCredentialsA | | #define CredUICmdLinePromptForCredentials CredUICmdLinePromptForCredentialsA |
#endif | | #endif |
| | |
End of changes. 51 change blocks. |
46 lines changed or deleted | | 428 lines changed or added |
|