Skip to content

Commit d7e56d5

Browse files
committed
Address copilot comments
1 parent 909fbeb commit d7e56d5

File tree

1 file changed

+17
-5
lines changed

1 file changed

+17
-5
lines changed

test-app/test_pkcs11.c

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -327,10 +327,12 @@ static int test_pkcs11_find_data_obj(CK_SESSION_HANDLE session,
327327
(CK_ULONG)(sizeof(data_tmpl) / sizeof(data_tmpl[0])), data_obj);
328328
}
329329

330-
static int test_pkcs11_generate_keypair(CK_SESSION_HANDLE session,
330+
static int test_pkcs11_import_keypair(CK_SESSION_HANDLE session,
331331
CK_OBJECT_HANDLE *pub_obj, CK_OBJECT_HANDLE *priv_obj)
332332
{
333333
CK_RV rv;
334+
CK_OBJECT_HANDLE pub_handle = CK_INVALID_HANDLE;
335+
CK_OBJECT_HANDLE priv_handle = CK_INVALID_HANDLE;
334336
CK_OBJECT_CLASS pub_class = CKO_PUBLIC_KEY;
335337
CK_OBJECT_CLASS priv_class = CKO_PRIVATE_KEY;
336338
CK_KEY_TYPE key_type = CKK_EC;
@@ -357,14 +359,24 @@ static int test_pkcs11_generate_keypair(CK_SESSION_HANDLE session,
357359
{ CKA_VALUE, (CK_VOID_PTR)test_ecc_p256_priv, sizeof(test_ecc_p256_priv) }
358360
};
359361

362+
*pub_obj = CK_INVALID_HANDLE;
363+
*priv_obj = CK_INVALID_HANDLE;
364+
360365
rv = wolfpkcs11nsFunctionList.C_CreateObject(session, pub_tmpl,
361-
(CK_ULONG)(sizeof(pub_tmpl) / sizeof(pub_tmpl[0])), pub_obj);
366+
(CK_ULONG)(sizeof(pub_tmpl) / sizeof(pub_tmpl[0])), &pub_handle);
362367
if (test_pkcs11_ck_ok("C_CreateObject(pub)", rv) < 0)
363368
return -1;
364369

365370
rv = wolfpkcs11nsFunctionList.C_CreateObject(session, priv_tmpl,
366-
(CK_ULONG)(sizeof(priv_tmpl) / sizeof(priv_tmpl[0])), priv_obj);
367-
return test_pkcs11_ck_ok("C_CreateObject(priv)", rv);
371+
(CK_ULONG)(sizeof(priv_tmpl) / sizeof(priv_tmpl[0])), &priv_handle);
372+
if (test_pkcs11_ck_ok("C_CreateObject(priv)", rv) < 0) {
373+
(void)wolfpkcs11nsFunctionList.C_DestroyObject(session, pub_handle);
374+
return -1;
375+
}
376+
377+
*pub_obj = pub_handle;
378+
*priv_obj = priv_handle;
379+
return 0;
368380
}
369381

370382
static int test_pkcs11_sign_payload(CK_SESSION_HANDLE session,
@@ -558,7 +570,7 @@ int test_pkcs11_start(void)
558570

559571
if (key_state == 1 && data_state == 1) {
560572
printf("pkcs11: first boot path, creating persistent objects\r\n");
561-
if (test_pkcs11_generate_keypair(session, &pub_obj, &priv_obj) < 0)
573+
if (test_pkcs11_import_keypair(session, &pub_obj, &priv_obj) < 0)
562574
ret = -1;
563575
else
564576
ret = 0;

0 commit comments

Comments
 (0)