Santino Mazza : ncrypt/tests: Test NCryptFreeObject function.

Alexandre Julliard julliard at winehq.org
Wed Feb 16 15:30:25 CST 2022


Module: wine
Branch: master
Commit: ea3d15f2ec4869450a5e82763ad2b8cb66982029
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=ea3d15f2ec4869450a5e82763ad2b8cb66982029

Author: Santino Mazza <mazzasantino1206 at gmail.com>
Date:   Wed Feb 16 15:13:06 2022 +0100

ncrypt/tests: Test NCryptFreeObject function.

Signed-off-by: Santino Mazza <mazzasantino1206 at gmail.com>
Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/ncrypt/tests/ncrypt.c | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/dlls/ncrypt/tests/ncrypt.c b/dlls/ncrypt/tests/ncrypt.c
index 68b893282c2..01d33e93755 100644
--- a/dlls/ncrypt/tests/ncrypt.c
+++ b/dlls/ncrypt/tests/ncrypt.c
@@ -136,7 +136,35 @@ static void test_key_import_rsa(void)
     NCryptFreeObject(prov);
 }
 
+static void test_ncrypt_free_object(void)
+{
+    NCRYPT_PROV_HANDLE prov;
+    NCRYPT_KEY_HANDLE key;
+    SECURITY_STATUS ret;
+    char *buf;
+
+    ret = NCryptOpenStorageProvider(&prov, NULL, 0);
+    ok(ret == ERROR_SUCCESS, "got %#lx\n", ret);
+
+    ret = NCryptImportKey(prov, 0, BCRYPT_RSAPUBLIC_BLOB, NULL, &key, rsa_key_blob, sizeof(rsa_key_blob), 0);
+    ok(ret == ERROR_SUCCESS, "got %#lx\n", ret);
+    todo_wine {
+    ret = NCryptFreeObject(key);
+    ok(ret == ERROR_SUCCESS, "got %#lx\n", ret);
+
+    key = 0;
+    ret = NCryptFreeObject(key);
+    ok(ret == NTE_INVALID_HANDLE, "got %#lx\n", ret);
+
+    buf = calloc(1, 50);
+    ret = NCryptFreeObject((NCRYPT_KEY_HANDLE)buf);
+    ok(ret == NTE_INVALID_HANDLE, "got %#lx\n", ret);
+    free(buf);
+    }
+}
+
 START_TEST(ncrypt)
 {
     test_key_import_rsa();
+    test_ncrypt_free_object();
 }




More information about the wine-cvs mailing list