| wincred.h (6.0.6002.18005-Windows 6.0) | | wincred.h (6.1.7601.18276-Windows 7.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: |
| | |
| | |
| skipping to change at line 146 | | skipping to change at line 145 |
| (_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 || \ |
| ) | | (_Status) == SEC_E_NO_CONTEXT || \ |
| | (_Status) == STATUS_NO_SECURITY_CONTEXT ) |
| | |
| #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 || \ |
| | |
| skipping to change at line 287 | | skipping to change at line 287 |
| #define CRED_TARGETNAME_DOMAIN_NAMESPACE_LENGTH (sizeof(CRED_TARGETNAME_DOMAIN_N
AMESPACE_A)-1) | | #define CRED_TARGETNAME_DOMAIN_NAMESPACE_LENGTH (sizeof(CRED_TARGETNAME_DOMAIN_N
AMESPACE_A)-1) |
| #define CRED_UNIVERSAL_WILDCARD_W L'*' | | #define CRED_UNIVERSAL_WILDCARD_W L'*' |
| #define CRED_UNIVERSAL_WILDCARD_A '*' | | #define CRED_UNIVERSAL_WILDCARD_A '*' |
| #define CRED_TARGETNAME_LEGACYGENERIC_NAMESPACE_W L"LegacyGeneric" | | #define CRED_TARGETNAME_LEGACYGENERIC_NAMESPACE_W L"LegacyGeneric" |
| #define CRED_TARGETNAME_LEGACYGENERIC_NAMESPACE_A "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_LEGACYGENERIC_NAMESPACE_LENGTH (sizeof(CRED_TARGETNAME_L
EGACYGENERIC_NAMESPACE_A)-1) |
| #define CRED_TARGETNAME_NAMESPACE_SEPERATOR_W L':' | | #define CRED_TARGETNAME_NAMESPACE_SEPERATOR_W L':' |
| #define CRED_TARGETNAME_NAMESPACE_SEPERATOR_A ':' | | #define CRED_TARGETNAME_NAMESPACE_SEPERATOR_A ':' |
| #define CRED_TARGETNAME_ATTRIBUTE_SEPERATOR_W L'=' | | #define CRED_TARGETNAME_ATTRIBUTE_SEPERATOR_W L'=' |
| #define CRED_TARGETNAME_ATTRIBUTE_SEPERATOR_A '=' | | #define CRED_TARGETNAME_ATTRIBUTE_SEPERATOR_A '=' |
|
| | #define CRED_TARGETNAME_DOMAIN_EXTENDED_USERNAME_SEPARATOR_W L'|' |
| | #define CRED_TARGETNAME_DOMAIN_EXTENDED_USERNAME_SEPARATOR_A '|' |
| #define CRED_TARGETNAME_ATTRIBUTE_TARGET_W L"target" | | #define CRED_TARGETNAME_ATTRIBUTE_TARGET_W L"target" |
| #define CRED_TARGETNAME_ATTRIBUTE_TARGET_A "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_TARGET_LENGTH (sizeof(CRED_TARGETNAME_ATTRIBUT
E_TARGET_A)-1) |
| #define CRED_TARGETNAME_ATTRIBUTE_NAME_W L"name" | | #define CRED_TARGETNAME_ATTRIBUTE_NAME_W L"name" |
| #define CRED_TARGETNAME_ATTRIBUTE_NAME_A "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_NAME_LENGTH (sizeof(CRED_TARGETNAME_ATTRIBUTE_
NAME_A)-1) |
| #define CRED_TARGETNAME_ATTRIBUTE_BATCH_W L"batch" | | #define CRED_TARGETNAME_ATTRIBUTE_BATCH_W L"batch" |
| #define CRED_TARGETNAME_ATTRIBUTE_BATCH_A "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_BATCH_LENGTH (sizeof(CRED_TARGETNAME_ATTRIBUTE
_BATCH_A)-1) |
| #define CRED_TARGETNAME_ATTRIBUTE_INTERACTIVE_W L"interactive" | | #define CRED_TARGETNAME_ATTRIBUTE_INTERACTIVE_W L"interactive" |
| | |
| skipping to change at line 365 | | skipping to change at line 367 |
| #define CredRemoveLogonTypeFromFlags(Flags) (Flags) &= ~CRED_LOGON
_TYPES_MASK | | #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_REQUIRE_CONFIRMATION 0x0010 | | #define CRED_FLAGS_REQUIRE_CONFIRMATION 0x0010 |
|
| #define CRED_FLAGS_VALID_FLAGS 0xF01F // Mask of all valid flags | | |
| | // |
| | // Valid only for return and only with CredReadDomainCredentials(). |
| | // Indicates credential was returned due to wildcard match |
| | // of targetname with credential. |
| | // |
| | |
| | #define CRED_FLAGS_WILDCARD_MATCH 0x0020 |
| | #define CRED_FLAGS_VALID_FLAGS 0xF03F // Mask of all valid flags |
| | |
| | // |
| | // Bit mask for only those flags which can be passed to the credman |
| | // APIs. |
| | // |
| | |
| | #define CRED_FLAGS_VALID_INPUT_FLAGS 0xF01F |
| | |
| // | | // |
| // 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_GENERIC_CERTIFICATE 5 | | #define CRED_TYPE_GENERIC_CERTIFICATE 5 |
|
| #define CRED_TYPE_MAXIMUM 6 // Maximum supported cred type | | #define CRED_TYPE_DOMAIN_EXTENDED 6 |
| | #define CRED_TYPE_MAXIMUM 7 // 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 (5*512) |
| | |
| // | | // |
| // Values of the Credential Persist field | | // Values of the Credential Persist field |
| // | | // |
| #define CRED_PERSIST_NONE 0 | | #define CRED_PERSIST_NONE 0 |
| #define CRED_PERSIST_SESSION 1 | | #define CRED_PERSIST_SESSION 1 |
| #define CRED_PERSIST_LOCAL_MACHINE 2 | | #define CRED_PERSIST_LOCAL_MACHINE 2 |
| #define CRED_PERSIST_ENTERPRISE 3 | | #define CRED_PERSIST_ENTERPRISE 3 |
| | |
| // | | // |
| | |
| skipping to change at line 567 | | skipping to change at line 586 |
| LPBYTE pbBlob; | | LPBYTE pbBlob; |
| } BINARY_BLOB_CREDENTIAL_INFO, *PBINARY_BLOB_CREDENTIAL_INFO; | | } 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 | | BinaryBlobCredential, |
| | UsernameForPackedCredentials, // internal only, reserved |
| } CRED_MARSHAL_TYPE, *PCRED_MARSHAL_TYPE; | | } CRED_MARSHAL_TYPE, *PCRED_MARSHAL_TYPE; |
| | |
| // | | // |
| // Protection type for credential providers secret protection routines | | // Protection type for credential providers secret protection routines |
| // | | // |
| | |
| typedef enum _CRED_PROTECTION_TYPE { | | typedef enum _CRED_PROTECTION_TYPE { |
| CredUnprotected, | | CredUnprotected, |
| CredUserProtection, | | CredUserProtection, |
| CredTrustedProtection | | CredTrustedProtection |
| | |
| skipping to change at line 591 | | skipping to change at line 611 |
| // Values for authentication buffers packing | | // Values for authentication buffers packing |
| // | | // |
| #define CRED_PACK_PROTECTED_CREDENTIALS 0x1 | | #define CRED_PACK_PROTECTED_CREDENTIALS 0x1 |
| #define CRED_PACK_WOW_BUFFER 0x2 | | #define CRED_PACK_WOW_BUFFER 0x2 |
| #define CRED_PACK_GENERIC_CREDENTIALS 0x4 | | #define CRED_PACK_GENERIC_CREDENTIALS 0x4 |
| | |
| // | | // |
| // Credential UI info | | // Credential UI info |
| // | | // |
| | |
|
| | #define _CREDUI_INFO_DEFINED |
| | |
| 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; |
| } CREDUI_INFOA, *PCREDUI_INFOA; | | } CREDUI_INFOA, *PCREDUI_INFOA; |
| | |
| typedef struct _CREDUI_INFOW | | typedef struct _CREDUI_INFOW |
| | |
| skipping to change at line 627 | | skipping to change at line 649 |
| //----------------------------------------------------------------------------- | | //----------------------------------------------------------------------------- |
| // Values | | // Values |
| //----------------------------------------------------------------------------- | | //----------------------------------------------------------------------------- |
| | |
| // String length limits: | | // String length limits: |
| | |
| #define CREDUI_MAX_MESSAGE_LENGTH 32767 | | #define CREDUI_MAX_MESSAGE_LENGTH 32767 |
| #define CREDUI_MAX_CAPTION_LENGTH 128 | | #define CREDUI_MAX_CAPTION_LENGTH 128 |
| #define CREDUI_MAX_GENERIC_TARGET_LENGTH CRED_MAX_GENERIC_TARGET_NAME_LENGTH | | #define CREDUI_MAX_GENERIC_TARGET_LENGTH CRED_MAX_GENERIC_TARGET_NAME_LENGTH |
| #define CREDUI_MAX_DOMAIN_TARGET_LENGTH CRED_MAX_DOMAIN_TARGET_NAME_LENGTH | | #define CREDUI_MAX_DOMAIN_TARGET_LENGTH CRED_MAX_DOMAIN_TARGET_NAME_LENGTH |
|
| | |
| | // |
| | // Username can be in <domain>\<user> or <user>@<domain> |
| | // Length in characters, not including NULL termination. |
| | // |
| | |
| #define CREDUI_MAX_USERNAME_LENGTH CRED_MAX_USERNAME_LENGTH | | #define CREDUI_MAX_USERNAME_LENGTH CRED_MAX_USERNAME_LENGTH |
|
| #define CREDUI_MAX_PASSWORD_LENGTH (CRED_MAX_CREDENTIAL_BLOB_SIZE / 2) | | #define CREDUI_MAX_PASSWORD_LENGTH (512 / 2) |
| | |
| | // |
| | // Packed credential returned by SspiEncodeAuthIdentityAsStrings(). |
| | // Length in characters, not including NULL termination. |
| | // |
| | |
| | #define CREDUI_MAX_PACKED_CREDENTIALS_LENGTH ((MAXUSHORT / 2) - 2) |
| | |
| | // maximum length in bytes for binary credential blobs |
| | |
| | #define CREDUI_MAX_CREDENTIALS_BLOB_SIZE (MAXUSHORT) |
| | |
| // | | // |
| // Flags for CredUIPromptForCredentials and/or CredUICmdLinePromptForCredentials | | // Flags for CredUIPromptForCredentials and/or CredUICmdLinePromptForCredentials |
| // | | // |
| | |
| #define CREDUI_FLAGS_INCORRECT_PASSWORD 0x00001 // indicates the usernam
e is valid, but password is not | | #define CREDUI_FLAGS_INCORRECT_PASSWORD 0x00001 // indicates the usernam
e is valid, but password is not |
| #define CREDUI_FLAGS_DO_NOT_PERSIST 0x00002 // Do not show "Save" ch
eckbox, and do not persist credentials | | #define CREDUI_FLAGS_DO_NOT_PERSIST 0x00002 // Do not show "Save" ch
eckbox, and do not persist credentials |
| #define CREDUI_FLAGS_REQUEST_ADMINISTRATOR 0x00004 // Populate list box wit
h admin accounts | | #define CREDUI_FLAGS_REQUEST_ADMINISTRATOR 0x00004 // Populate list box wit
h admin accounts |
| #define CREDUI_FLAGS_EXCLUDE_CERTIFICATES 0x00008 // do not include certif
icates in the drop list | | #define CREDUI_FLAGS_EXCLUDE_CERTIFICATES 0x00008 // do not include certif
icates in the drop list |
| #define CREDUI_FLAGS_REQUIRE_CERTIFICATE 0x00010 | | #define CREDUI_FLAGS_REQUIRE_CERTIFICATE 0x00010 |
| | |
| skipping to change at line 684 | | skipping to change at line 723 |
| // | | // |
| // Flags for CredUIPromptForWindowsCredentials and CPUS_CREDUI Usage Scenarios | | // Flags for CredUIPromptForWindowsCredentials and CPUS_CREDUI Usage Scenarios |
| // | | // |
| | |
| #define CREDUIWIN_GENERIC 0x00000001 // Plain text username/p
assword is being requested | | #define CREDUIWIN_GENERIC 0x00000001 // Plain text username/p
assword is being requested |
| #define CREDUIWIN_CHECKBOX 0x00000002 // Show the Save Credent
ial checkbox | | #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_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_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_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_ENUMERATE_CURRENT_USER 0x00000200 // Only the incoming cre
d for the specific auth package should be enumerated |
|
| | #define CREDUIWIN_SECURE_PROMPT 0x00001000 // The Credui prompt sho
uld be displayed on the secure desktop |
| #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_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 ( \ | | #define CREDUIWIN_VALID_FLAGS ( \ |
| CREDUIWIN_GENERIC | \ | | CREDUIWIN_GENERIC | \ |
| CREDUIWIN_CHECKBOX | \ | | CREDUIWIN_CHECKBOX | \ |
| CREDUIWIN_AUTHPACKAGE_ONLY | \ | | CREDUIWIN_AUTHPACKAGE_ONLY | \ |
| CREDUIWIN_IN_CRED_ONLY | \ | | CREDUIWIN_IN_CRED_ONLY | \ |
| CREDUIWIN_ENUMERATE_ADMINS | \ | | CREDUIWIN_ENUMERATE_ADMINS | \ |
| CREDUIWIN_ENUMERATE_CURRENT_USER | \ | | CREDUIWIN_ENUMERATE_CURRENT_USER | \ |
|
| | CREDUIWIN_SECURE_PROMPT | \ |
| CREDUIWIN_PACK_32_WOW ) | | CREDUIWIN_PACK_32_WOW ) |
| | |
| //----------------------------------------------------------------------------- | | //----------------------------------------------------------------------------- |
| // Functions | | // Functions |
| //----------------------------------------------------------------------------- | | //----------------------------------------------------------------------------- |
| | |
| // | | // |
| // Values of flags to CredWrite and CredWriteDomainCredentials | | // Values of flags to CredWrite and CredWriteDomainCredentials |
| // | | // |
| | |
| | |
| skipping to change at line 1090 | | skipping to change at line 1131 |
| #define CredProtect CredProtectA | | #define CredProtect CredProtectA |
| #endif //UNICODE | | #endif //UNICODE |
| | |
| WINADVAPI | | WINADVAPI |
| BOOL | | BOOL |
| WINAPI | | WINAPI |
| CredUnprotectW( | | CredUnprotectW( |
| __in BOOL fAsSelf, | | __in BOOL fAsSelf, |
| __in_ecount(cchProtectedCredentials) LPWSTR pszProtectedCredentials, | | __in_ecount(cchProtectedCredentials) LPWSTR pszProtectedCredentials, |
| __in DWORD cchProtectedCredentials, | | __in DWORD cchProtectedCredentials, |
|
| __out_ecount(*pcchMaxChars) LPWSTR pszCredentials, | | __out_ecount_opt(*pcchMaxChars) LPWSTR pszCredentials, |
| __inout DWORD* pcchMaxChars | | __inout DWORD* pcchMaxChars |
| ); | | ); |
| | |
| WINADVAPI | | WINADVAPI |
| BOOL | | BOOL |
| WINAPI | | WINAPI |
| CredUnprotectA( | | CredUnprotectA( |
| __in BOOL fAsSelf, | | __in BOOL fAsSelf, |
| __in_ecount(cchProtectedCredentials) LPSTR pszProtectedCredentials, | | __in_ecount(cchProtectedCredentials) LPSTR pszProtectedCredentials, |
| __in DWORD cchProtectedCredentials, | | __in DWORD cchProtectedCredentials, |
|
| __out_ecount(*pcchMaxChars) LPSTR pszCredentials, | | __out_ecount_opt(*pcchMaxChars) LPSTR pszCredentials, |
| __inout DWORD* pcchMaxChars | | __inout DWORD* pcchMaxChars |
| ); | | ); |
| | |
| #ifdef UNICODE | | #ifdef UNICODE |
| #define CredUnprotect CredUnprotectW | | #define CredUnprotect CredUnprotectW |
| #else | | #else |
| #define CredUnprotect CredUnprotectA | | #define CredUnprotect CredUnprotectA |
| #endif //UNICODE | | #endif //UNICODE |
| | |
| WINADVAPI | | WINADVAPI |
| | |
| End of changes. 14 change blocks. |
| 10 lines changed or deleted | | 51 lines changed or added |
|