Skip to content

Commit 2245eb1

Browse files
committed
Addressed more CodeRabbit bot issues.
1 parent 5cd5a55 commit 2245eb1

1 file changed

Lines changed: 6 additions & 3 deletions

File tree

src/lib/SoftHSM.cpp

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1138,13 +1138,12 @@ CK_RV SoftHSM::C_GetMechanismInfo(CK_SLOT_ID slotID, CK_MECHANISM_TYPE type, CK_
11381138
/* FALLTHROUGH */
11391139
#endif
11401140
case CKM_DES3_CBC:
1141-
pInfo->flags |= CKF_WRAP;
11421141
/* FALLTHROUGH */
11431142
case CKM_DES3_ECB:
11441143
// Key size is not in use
11451144
pInfo->ulMinKeySize = 0;
11461145
pInfo->ulMaxKeySize = 0;
1147-
pInfo->flags |= CKF_ENCRYPT | CKF_DECRYPT;
1146+
pInfo->flags |= CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP;
11481147
break;
11491148
case CKM_DES3_CMAC:
11501149
// Key size is not in use
@@ -6293,6 +6292,7 @@ CK_RV SoftHSM::WrapKeySym
62936292
case CKM_AES_CBC:
62946293
algo = SymAlgo::AES;
62956294
sym_mode = SymMode::CBC;
6295+
blocksize = 16;
62966296
break;
62976297

62986298
case CKM_AES_CBC_PAD:
@@ -6982,10 +6982,13 @@ CK_RV SoftHSM::UnwrapKeySym
69826982
CryptoFactory::i()->recycleSymmetricAlgorithm(cipher);
69836983
return CKR_GENERAL_ERROR;
69846984
}
6985-
// Finalize encryption
6985+
// Finalize decryption
69866986
if (!cipher->decryptFinal(decryptedFinal)) {
69876987
cipher->recycleKey(unwrappingkey);
69886988
CryptoFactory::i()->recycleSymmetricAlgorithm(cipher);
6989+
return (pMechanism->mechanism == CKM_AES_CBC_PAD || pMechanism->mechanism == CKM_DES3_CBC_PAD)
6990+
? CKR_WRAPPED_KEY_INVALID
6991+
: CKR_GENERAL_ERROR;
69896992
return CKR_GENERAL_ERROR;
69906993
}
69916994
keydata += decryptedFinal;

0 commit comments

Comments
 (0)