On 2023-06-23 7:42, Steve Lhomme wrote:
The API's are allowed in windowsapp since 19H1 and are allowed by the WACK.
Only the MS header don't specify it properly for WINAPI_FAMILY_PC_APP
but since the DLL is on all WINAPI_FAMILY_DESKTOP_APP and allowed by the
WACK this always works.
---
mingw-w64-headers/include/wincrypt.h | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/mingw-w64-headers/include/wincrypt.h
b/mingw-w64-headers/include/wincrypt.h
index 1f05a3587..cc1fab35d 100644
--- a/mingw-w64-headers/include/wincrypt.h
+++ b/mingw-w64-headers/include/wincrypt.h
@@ -788,19 +788,13 @@ extern "C" {
#define CryptSetProviderEx __MINGW_NAME_AW(CryptSetProviderEx)
#define CryptEnumProviderTypes __MINGW_NAME_AW(CryptEnumProviderTypes)
#define CryptEnumProviders __MINGW_NAME_AW(CryptEnumProviders)
Oops, another stray one...
-#define CryptSetProvider __MINGW_NAME_AW(CryptSetProvider)
WINIMPM WINBOOL WINAPI CryptHashSessionKey (HCRYPTHASH hHash, HCRYPTKEY hKey, DWORD dwFlags);
- WINIMPM WINBOOL WINAPI CryptSetProviderA (LPCSTR pszProvName, DWORD
dwProvType);
- WINIMPM WINBOOL WINAPI CryptSetProviderW (LPCWSTR pszProvName, DWORD
dwProvType);
WINIMPM WINBOOL WINAPI CryptSetProviderExA (LPCSTR pszProvName, DWORD
dwProvType, DWORD *pdwReserved, DWORD dwFlags);
WINIMPM WINBOOL WINAPI CryptSetProviderExW (LPCWSTR pszProvName, DWORD
dwProvType, DWORD *pdwReserved, DWORD dwFlags);
WINIMPM WINBOOL WINAPI CryptEnumProviderTypesA (DWORD dwIndex, DWORD
*pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szTypeName, DWORD
*pcbTypeName);
WINIMPM WINBOOL WINAPI CryptEnumProviderTypesW (DWORD dwIndex, DWORD
*pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szTypeName, DWORD
*pcbTypeName);
- WINIMPM WINBOOL WINAPI CryptEnumProvidersA (DWORD dwIndex, DWORD
*pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szProvName, DWORD
*pcbProvName);
- WINIMPM WINBOOL WINAPI CryptEnumProvidersW (DWORD dwIndex, DWORD
*pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szProvName, DWORD
*pcbProvName);
WINIMPM WINBOOL WINAPI CryptContextAddRef (HCRYPTPROV hProv, DWORD
*pdwReserved, DWORD dwFlags);
- WINIMPM WINBOOL WINAPI CryptDuplicateKey (HCRYPTKEY hKey, DWORD
*pdwReserved, DWORD dwFlags, HCRYPTKEY *phKey);
WINIMPM WINBOOL WINAPI CryptDuplicateHash (HCRYPTHASH hHash, DWORD
*pdwReserved, DWORD dwFlags, HCRYPTHASH *phHash);
#if NTDDI_VERSION >= NTDDI_WS03
WINBOOL __cdecl GetEncSChannel (BYTE **pData, DWORD *dwDecSize);
@@ -845,6 +839,17 @@ extern "C" {
WINIMPM WINBOOL WINAPI CryptGetDefaultProviderW (DWORD dwProvType, DWORD
*pdwReserved, DWORD dwFlags, LPWSTR pszProvName, DWORD *pcbProvName);
#endif
+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
+ WINIMPM WINBOOL WINAPI CryptDuplicateKey (HCRYPTKEY hKey, DWORD
*pdwReserved, DWORD dwFlags, HCRYPTKEY *phKey);
+ WINIMPM WINBOOL WINAPI CryptEnumProvidersA (DWORD dwIndex, DWORD
*pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szProvName, DWORD
*pcbProvName);
+ WINIMPM WINBOOL WINAPI CryptEnumProvidersW (DWORD dwIndex, DWORD
*pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szProvName, DWORD
*pcbProvName);
+ WINIMPM WINBOOL WINAPI CryptSetProviderW (LPCWSTR pszProvName, DWORD
dwProvType);
+ WINIMPM WINBOOL WINAPI CryptSetProviderA (LPCSTR pszProvName, DWORD
dwProvType);
+
+#define CryptEnumProviders __MINGW_NAME_AW(CryptEnumProviders)
+#define CryptSetProvider __MINGW_NAME_AW(CryptSetProvider)
+#endif
+
#ifndef _DDK_DRIVER_
typedef ULONG_PTR HCRYPTPROV_OR_NCRYPT_KEY_HANDLE;
typedef ULONG_PTR HCRYPTPROV_LEGACY;
--
2.39.2
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public