From: Ariel Darshan abdaandroid@gmail.com
Signed-off-by: Ariel Darshan abdaandroid@gmail.com --- dlls/ncrypt/main.c | 10 ++++++++++ dlls/ncrypt/ncrypt.spec | 2 +- include/ncrypt.h | 1 + 3 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/dlls/ncrypt/main.c b/dlls/ncrypt/main.c index 27313438279..003add36502 100644 --- a/dlls/ncrypt/main.c +++ b/dlls/ncrypt/main.c @@ -288,6 +288,16 @@ SECURITY_STATUS WINAPI NCryptIsAlgSupported(NCRYPT_PROV_HANDLE provider, const W return NTE_NOT_SUPPORTED; }
+BOOL WINAPI NCryptIsKeyHandle(NCRYPT_HANDLE object) +{ + struct ncrypt_base_object *obj; + + TRACE("(0x%lx)\n", object); + + obj = handle2baseObject(object); + return obj->sType == NCRYPT_OBJ_TYPE_KEY; +} + SECURITY_STATUS WINAPI NCryptOpenKey(NCRYPT_PROV_HANDLE provider, NCRYPT_KEY_HANDLE *key, const WCHAR *name, DWORD keyspec, DWORD flags) { diff --git a/dlls/ncrypt/ncrypt.spec b/dlls/ncrypt/ncrypt.spec index 2e6765c91ff..b13354e4bef 100644 --- a/dlls/ncrypt/ncrypt.spec +++ b/dlls/ncrypt/ncrypt.spec @@ -78,7 +78,7 @@ @ stub NCryptGetProtectionDescriptorInfo @ stdcall NCryptImportKey(long long wstr ptr ptr ptr long long) @ stub NCryptIsAlgSupported(long wstr long) -@ stub NCryptIsKeyHandle +@ stdcall NCryptIsKeyHandle(long) @ stub NCryptKeyDerivation @ stub NCryptNotifyChangeKey @ stdcall NCryptOpenKey(long ptr wstr long long) diff --git a/include/ncrypt.h b/include/ncrypt.h index 9110c1ef6a4..b78fa3aeae7 100644 --- a/include/ncrypt.h +++ b/include/ncrypt.h @@ -81,6 +81,7 @@ SECURITY_STATUS WINAPI NCryptEnumStorageProviders(DWORD *, NCryptProviderName ** SECURITY_STATUS WINAPI NCryptFinalizeKey(NCRYPT_KEY_HANDLE, DWORD); SECURITY_STATUS WINAPI NCryptFreeBuffer(PVOID); SECURITY_STATUS WINAPI NCryptFreeObject(NCRYPT_HANDLE); +BOOL WINAPI NCryptIsKeyHandle(NCRYPT_HANDLE); SECURITY_STATUS WINAPI NCryptOpenKey(NCRYPT_PROV_HANDLE, NCRYPT_KEY_HANDLE *, const WCHAR *, DWORD, DWORD); SECURITY_STATUS WINAPI NCryptOpenStorageProvider(NCRYPT_PROV_HANDLE *, const WCHAR *, DWORD);