hc
2024-10-12 a5969cabbb4660eab42b6ef0412cbbd1200cf14d
kernel/drivers/s390/crypto/pkey_api.c
....@@ -735,7 +735,7 @@
735735 if (ktype)
736736 *ktype = PKEY_TYPE_EP11;
737737 if (ksize)
738
- *ksize = kb->head.keybitlen;
738
+ *ksize = kb->head.bitlen;
739739
740740 rc = ep11_findcard2(&_apqns, &_nr_apqns, *cardnr, *domain,
741741 ZCRYPT_CEX7, EP11_API_V, kb->wkvp);
....@@ -1271,6 +1271,7 @@
12711271 return PTR_ERR(kkey);
12721272 rc = pkey_keyblob2pkey(kkey, ktp.keylen, &ktp.protkey);
12731273 DEBUG_DBG("%s pkey_keyblob2pkey()=%d\n", __func__, rc);
1274
+ memzero_explicit(kkey, ktp.keylen);
12741275 kfree(kkey);
12751276 if (rc)
12761277 break;
....@@ -1404,6 +1405,7 @@
14041405 kkey, ktp.keylen, &ktp.protkey);
14051406 DEBUG_DBG("%s pkey_keyblob2pkey2()=%d\n", __func__, rc);
14061407 kfree(apqns);
1408
+ memzero_explicit(kkey, ktp.keylen);
14071409 kfree(kkey);
14081410 if (rc)
14091411 break;
....@@ -1530,6 +1532,7 @@
15301532 protkey, &protkeylen);
15311533 DEBUG_DBG("%s pkey_keyblob2pkey3()=%d\n", __func__, rc);
15321534 kfree(apqns);
1535
+ memzero_explicit(kkey, ktp.keylen);
15331536 kfree(kkey);
15341537 if (rc) {
15351538 kfree(protkey);