52 lines
1.8 KiB
Groff
52 lines
1.8 KiB
Groff
|
tdf#159519 Windows 7 does not have BCryptKeyDerivation
|
||
|
|
||
|
It just occurred to me that these functions would of course not be called
|
||
|
by LibreOffice so this is untested.
|
||
|
|
||
|
--- xmlsec/src/mscng/pbkdf2.c.orig 2024-02-21 19:02:56.539534152 +0100
|
||
|
+++ xmlsec/src/mscng/pbkdf2.c 2024-02-21 19:01:03.282270354 +0100
|
||
|
@@ -318,7 +318,20 @@
|
||
|
}
|
||
|
|
||
|
/* generate the output key */
|
||
|
+#if 1 // _WIN32_WINNT <= 0x0601
|
||
|
+ typedef NTSTATUS (WINAPI * BCryptKeyDerivationPtr)(
|
||
|
+ BCRYPT_KEY_HANDLE, BCryptBufferDesc *, PUCHAR, ULONG, ULONG *, ULONG);
|
||
|
+ HMODULE hBCrypt = GetModuleHandle("bcrypt.dll");
|
||
|
+ BCryptKeyDerivationPtr pBCryptKeyDerivation =
|
||
|
+ (BCryptKeyDerivationPtr) GetProcAddress(hBCrypt, "BCryptKeyDerivation");
|
||
|
+ if(NULL == pBCryptKeyDerivation) {
|
||
|
+ xmlSecMSCngNtError("BCryptKeyDerivation", NULL, status);
|
||
|
+ goto done;
|
||
|
+ }
|
||
|
+ status = (*pBCryptKeyDerivation)(
|
||
|
+#else
|
||
|
status = BCryptKeyDerivation(
|
||
|
+#endif
|
||
|
hKey,
|
||
|
¶msPBKDF2,
|
||
|
pbOut,
|
||
|
--- xmlsec/src/mscng/concatkdf.c.orig 2024-02-21 19:02:37.962490885 +0100
|
||
|
+++ xmlsec/src/mscng/concatkdf.c 2024-02-21 19:01:37.961351134 +0100
|
||
|
@@ -318,7 +318,20 @@
|
||
|
}
|
||
|
|
||
|
/* generate the output key */
|
||
|
+#if 1 // _WIN32_WINNT <= 0x0601
|
||
|
+ typedef NTSTATUS (WINAPI * BCryptKeyDerivationPtr)(
|
||
|
+ BCRYPT_KEY_HANDLE, BCryptBufferDesc *, PUCHAR, ULONG, ULONG *, ULONG);
|
||
|
+ HMODULE hBCrypt = GetModuleHandle("bcrypt.dll");
|
||
|
+ BCryptKeyDerivationPtr pBCryptKeyDerivation =
|
||
|
+ (BCryptKeyDerivationPtr) GetProcAddress(hBCrypt, "BCryptKeyDerivation");
|
||
|
+ if(NULL == pBCryptKeyDerivation) {
|
||
|
+ xmlSecMSCngNtError("BCryptKeyDerivation", NULL, status);
|
||
|
+ goto done;
|
||
|
+ }
|
||
|
+ status = (*pBCryptKeyDerivation)(
|
||
|
+#else
|
||
|
status = BCryptKeyDerivation(
|
||
|
+#endif
|
||
|
hKey,
|
||
|
¶msCONCATKDF2,
|
||
|
pbOut,
|