Skip to content

Commit 496fe2c

Browse files
committed
openssl3: skip DES* tests
Signed-off-by: Alexander Bokovoy <[email protected]>
1 parent d8b6ebb commit 496fe2c

File tree

3 files changed

+99
-66
lines changed

3 files changed

+99
-66
lines changed

src/lib/test/DeriveTests.cpp

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -666,11 +666,14 @@ void DeriveTests::symDerive(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hKey, C
666666
0x25, 0x26, 0x27, 0x28, 0x29, 0x30, 0x31, 0x32
667667
};
668668
CK_ULONG secLen = 0;
669+
CK_BBOOL oldMechs = CK_FALSE;
669670

670671
switch (mechType)
671672
{
672673
case CKM_DES_ECB_ENCRYPT_DATA:
673674
case CKM_DES3_ECB_ENCRYPT_DATA:
675+
oldMechs = CK_TRUE;
676+
/* fall-through */
674677
case CKM_AES_ECB_ENCRYPT_DATA:
675678
param1.pData = &data[0];
676679
param1.ulLen = sizeof(data);
@@ -679,6 +682,7 @@ void DeriveTests::symDerive(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hKey, C
679682
break;
680683
case CKM_DES_CBC_ENCRYPT_DATA:
681684
case CKM_DES3_CBC_ENCRYPT_DATA:
685+
oldMechs = CK_TRUE;
682686
memcpy(param2.iv, "12345678", 8);
683687
param2.pData = &data[0];
684688
param2.length = sizeof(data);
@@ -703,10 +707,12 @@ void DeriveTests::symDerive(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hKey, C
703707
break;
704708
case CKK_DES:
705709
mechEncrypt.mechanism = CKM_DES_ECB;
710+
oldMechs = CK_TRUE;
706711
break;
707712
case CKK_DES2:
708713
case CKK_DES3:
709714
mechEncrypt.mechanism = CKM_DES3_ECB;
715+
oldMechs = CK_TRUE;
710716
break;
711717
case CKK_AES:
712718
mechEncrypt.mechanism = CKM_AES_ECB;
@@ -743,7 +749,11 @@ void DeriveTests::symDerive(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hKey, C
743749
keyAttribs, sizeof(keyAttribs)/sizeof(CK_ATTRIBUTE) - 1,
744750
&hDerive) );
745751
}
746-
CPPUNIT_ASSERT(rv == CKR_OK);
752+
if (rv != CKR_OK && oldMechs == CK_TRUE) {
753+
// Skip old mechanisms, they don't work under this crypto library
754+
return;
755+
}
756+
CPPUNIT_ASSERT(rv==CKR_OK);
747757

748758
// Check that KCV has been set
749759
CK_ATTRIBUTE checkAttribs[] = {
@@ -764,6 +774,10 @@ void DeriveTests::symDerive(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hKey, C
764774
CK_ULONG ulRecoveredTextLen;
765775

766776
rv = CRYPTOKI_F_PTR( C_EncryptInit(hSession,&mechEncrypt,hDerive) );
777+
if (rv != CKR_OK && oldMechs == CK_TRUE) {
778+
// Skip old mechanisms, they don't work under this crypto library
779+
return;
780+
}
767781
CPPUNIT_ASSERT(rv==CKR_OK);
768782

769783
ulCipherTextLen = sizeof(cipherText);

src/lib/test/ObjectTests.cpp

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2370,8 +2370,10 @@ void ObjectTests::testCreateSecretKey()
23702370
CPPUNIT_ASSERT(rv == CKR_OK);
23712371
rv = CRYPTOKI_F_PTR( C_GetAttributeValue(hSession, hObject, attribKCV, 1) );
23722372
CPPUNIT_ASSERT(rv == CKR_OK);
2373-
CPPUNIT_ASSERT(attribKCV[0].ulValueLen == 3);
2374-
CPPUNIT_ASSERT(memcmp(pCheckValue, desKCV, 3) == 0);
2373+
// If DES key is not supported, skip it
2374+
if (attribKCV[0].ulValueLen == 3) {
2375+
CPPUNIT_ASSERT(memcmp(pCheckValue, desKCV, 3) == 0);
2376+
}
23752377
rv = CRYPTOKI_F_PTR( C_DestroyObject(hSession,hObject) );
23762378
CPPUNIT_ASSERT(rv == CKR_OK);
23772379

@@ -2381,9 +2383,12 @@ void ObjectTests::testCreateSecretKey()
23812383
rv = CRYPTOKI_F_PTR( C_CreateObject(hSession, attribs, sizeof(attribs)/sizeof(CK_ATTRIBUTE), &hObject) );
23822384
CPPUNIT_ASSERT(rv == CKR_OK);
23832385
rv = CRYPTOKI_F_PTR( C_GetAttributeValue(hSession, hObject, attribKCV, 1) );
2384-
CPPUNIT_ASSERT(rv == CKR_OK);
2385-
CPPUNIT_ASSERT(attribKCV[0].ulValueLen == 3);
2386-
CPPUNIT_ASSERT(memcmp(pCheckValue, des2KCV, 3) == 0);
2386+
// If DES2 key is not supported, skip it
2387+
if (rv == CKR_OK) {
2388+
if (attribKCV[0].ulValueLen == 3) {
2389+
CPPUNIT_ASSERT(memcmp(pCheckValue, des2KCV, 3) == 0);
2390+
}
2391+
}
23872392
rv = CRYPTOKI_F_PTR( C_DestroyObject(hSession,hObject) );
23882393
CPPUNIT_ASSERT(rv == CKR_OK);
23892394

@@ -2394,8 +2399,10 @@ void ObjectTests::testCreateSecretKey()
23942399
CPPUNIT_ASSERT(rv == CKR_OK);
23952400
rv = CRYPTOKI_F_PTR( C_GetAttributeValue(hSession, hObject, attribKCV, 1) );
23962401
CPPUNIT_ASSERT(rv == CKR_OK);
2397-
CPPUNIT_ASSERT(attribKCV[0].ulValueLen == 3);
2398-
CPPUNIT_ASSERT(memcmp(pCheckValue, des3KCV, 3) == 0);
2402+
// If DES3 key is not supported, skip it
2403+
if (attribKCV[0].ulValueLen == 3) {
2404+
CPPUNIT_ASSERT(memcmp(pCheckValue, des3KCV, 3) == 0);
2405+
}
23992406
rv = CRYPTOKI_F_PTR( C_DestroyObject(hSession,hObject) );
24002407
CPPUNIT_ASSERT(rv == CKR_OK);
24012408
}

src/lib/test/SymmetricAlgorithmTests.cpp

Lines changed: 70 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,8 @@ void SymmetricAlgorithmTests::encryptDecrypt(
195195
std::vector<CK_BYTE> vEncryptedData;
196196
std::vector<CK_BYTE> vEncryptedDataParted;
197197
PartSize partSize(blockSize, &vData);
198+
CK_BBOOL oldMechs = CK_FALSE;
199+
CK_RV rv = CKR_OK;
198200

199201
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_GenerateRandom(hSession, (CK_BYTE_PTR)&vData.front(), messageSize) ) );
200202

@@ -231,6 +233,8 @@ void SymmetricAlgorithmTests::encryptDecrypt(
231233
{
232234
case CKM_DES_CBC:
233235
case CKM_DES_CBC_PAD:
236+
oldMechs = CK_TRUE;
237+
/* fall-through */
234238
case CKM_DES3_CBC:
235239
case CKM_DES3_CBC_PAD:
236240
case CKM_AES_CBC:
@@ -246,12 +250,17 @@ void SymmetricAlgorithmTests::encryptDecrypt(
246250
pMechanism->pParameter = &gcmParams;
247251
pMechanism->ulParameterLen = sizeof(gcmParams);
248252
break;
253+
case CKM_DES_ECB:
254+
oldMechs = CK_TRUE;
255+
break;
249256
default:
250257
break;
251258
}
252259

253260
// Single-part encryption
254-
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_EncryptInit(hSession,pMechanism,hKey) ) );
261+
rv = CRYPTOKI_F_PTR( C_EncryptInit(hSession,pMechanism,hKey) );
262+
CPPUNIT_ASSERT_EQUAL( (CK_BBOOL) CK_FALSE, (CK_BBOOL) ((rv != CKR_OK) && (oldMechs == CK_FALSE)) );
263+
if (oldMechs == CK_FALSE)
255264
{
256265
CK_ULONG ulEncryptedDataLen;
257266
const CK_RV rv( CRYPTOKI_F_PTR( C_Encrypt(hSession,(CK_BYTE_PTR)&vData.front(),messageSize,NULL_PTR,&ulEncryptedDataLen) ) );
@@ -267,40 +276,42 @@ void SymmetricAlgorithmTests::encryptDecrypt(
267276
}
268277

269278
// Multi-part encryption
270-
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_EncryptInit(hSession,pMechanism,hKey) ) );
271-
272-
for ( std::vector<CK_BYTE>::const_iterator i(vData.begin()); i<vData.end(); i+=partSize.getCurrent() ) {
273-
const CK_ULONG lPartLen( i+partSize.getNext()<vData.end() ? partSize.getCurrent() : vData.end()-i );
274-
CK_ULONG ulEncryptedPartLen;
275-
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_EncryptUpdate(hSession,(CK_BYTE_PTR)&(*i),lPartLen,NULL_PTR,&ulEncryptedPartLen) ) );
276-
const size_t oldSize( vEncryptedDataParted.size() );
277-
vEncryptedDataParted.resize(oldSize+ulEncryptedPartLen);
278-
CK_BYTE dummy;
279-
const CK_BYTE_PTR pEncryptedPart( ulEncryptedPartLen>0 ? &vEncryptedDataParted.at(oldSize) : &dummy );
280-
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_EncryptUpdate(hSession,(CK_BYTE_PTR)&(*i),lPartLen,pEncryptedPart,&ulEncryptedPartLen) ) );
281-
vEncryptedDataParted.resize(oldSize+ulEncryptedPartLen);
282-
}
283-
{
284-
CK_ULONG ulLastEncryptedPartLen;
285-
const CK_RV rv( CRYPTOKI_F_PTR( C_EncryptFinal(hSession,NULL_PTR,&ulLastEncryptedPartLen) ) );
286-
if ( isSizeOK ) {
287-
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, rv );
279+
rv = CRYPTOKI_F_PTR( C_EncryptInit(hSession,pMechanism,hKey) );
280+
CPPUNIT_ASSERT_EQUAL( (CK_BBOOL) CK_FALSE, (CK_BBOOL) ((rv != CKR_OK) && (oldMechs == CK_FALSE)) );
281+
if (oldMechs == CK_FALSE) {
282+
for ( std::vector<CK_BYTE>::const_iterator i(vData.begin()); i<vData.end(); i+=partSize.getCurrent() ) {
283+
const CK_ULONG lPartLen( i+partSize.getNext()<vData.end() ? partSize.getCurrent() : vData.end()-i );
284+
CK_ULONG ulEncryptedPartLen;
285+
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_EncryptUpdate(hSession,(CK_BYTE_PTR)&(*i),lPartLen,NULL_PTR,&ulEncryptedPartLen) ) );
288286
const size_t oldSize( vEncryptedDataParted.size() );
287+
vEncryptedDataParted.resize(oldSize+ulEncryptedPartLen);
289288
CK_BYTE dummy;
290-
vEncryptedDataParted.resize(oldSize+ulLastEncryptedPartLen);
291-
const CK_BYTE_PTR pLastEncryptedPart( ulLastEncryptedPartLen>0 ? &vEncryptedDataParted.at(oldSize) : &dummy );
292-
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_EncryptFinal(hSession,pLastEncryptedPart,&ulLastEncryptedPartLen) ) );
293-
vEncryptedDataParted.resize(oldSize+ulLastEncryptedPartLen);
294-
} else {
295-
CPPUNIT_ASSERT_EQUAL_MESSAGE("C_EncryptFinal should fail with C_CKR_DATA_LEN_RANGE", (CK_RV)CKR_DATA_LEN_RANGE, rv);
296-
vEncryptedDataParted = vData;
289+
const CK_BYTE_PTR pEncryptedPart( ulEncryptedPartLen>0 ? &vEncryptedDataParted.at(oldSize) : &dummy );
290+
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_EncryptUpdate(hSession,(CK_BYTE_PTR)&(*i),lPartLen,pEncryptedPart,&ulEncryptedPartLen) ) );
291+
vEncryptedDataParted.resize(oldSize+ulEncryptedPartLen);
292+
}
293+
{
294+
CK_ULONG ulLastEncryptedPartLen;
295+
const CK_RV rv( CRYPTOKI_F_PTR( C_EncryptFinal(hSession,NULL_PTR,&ulLastEncryptedPartLen) ) );
296+
if ( isSizeOK ) {
297+
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, rv );
298+
const size_t oldSize( vEncryptedDataParted.size() );
299+
CK_BYTE dummy;
300+
vEncryptedDataParted.resize(oldSize+ulLastEncryptedPartLen);
301+
const CK_BYTE_PTR pLastEncryptedPart( ulLastEncryptedPartLen>0 ? &vEncryptedDataParted.at(oldSize) : &dummy );
302+
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_EncryptFinal(hSession,pLastEncryptedPart,&ulLastEncryptedPartLen) ) );
303+
vEncryptedDataParted.resize(oldSize+ulLastEncryptedPartLen);
304+
} else {
305+
CPPUNIT_ASSERT_EQUAL_MESSAGE("C_EncryptFinal should fail with C_CKR_DATA_LEN_RANGE", (CK_RV)CKR_DATA_LEN_RANGE, rv);
306+
vEncryptedDataParted = vData;
307+
}
297308
}
298309
}
299310

300311
// Single-part decryption
301-
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_DecryptInit(hSession,pMechanism,hKey) ) );
302-
303-
{
312+
rv = CRYPTOKI_F_PTR( C_DecryptInit(hSession,pMechanism,hKey) );
313+
CPPUNIT_ASSERT_EQUAL( (CK_BBOOL) CK_FALSE, (CK_BBOOL) ((rv != CKR_OK) && (oldMechs == CK_FALSE)) );
314+
if (oldMechs == CK_FALSE) {
304315
CK_ULONG ulDataLen;
305316
const CK_RV rv( CRYPTOKI_F_PTR( C_Decrypt(hSession,&vEncryptedData.front(),vEncryptedData.size(),NULL_PTR,&ulDataLen) ) );
306317
if ( isSizeOK ) {
@@ -315,8 +326,9 @@ void SymmetricAlgorithmTests::encryptDecrypt(
315326
}
316327

317328
// Multi-part decryption
318-
CPPUNIT_ASSERT_EQUAL( (CK_RV)CKR_OK, CRYPTOKI_F_PTR( C_DecryptInit(hSession,pMechanism,hKey) ) );
319-
{
329+
rv = CRYPTOKI_F_PTR( C_DecryptInit(hSession,pMechanism,hKey) );
330+
CPPUNIT_ASSERT_EQUAL( (CK_BBOOL) CK_FALSE, (CK_BBOOL) ((rv != CKR_OK) && (oldMechs == CK_FALSE)) );
331+
if (oldMechs == CK_FALSE) {
320332
std::vector<CK_BYTE> vDecryptedData;
321333
CK_BYTE dummy;
322334
for ( std::vector<CK_BYTE>::iterator i(vEncryptedDataParted.begin()); i<vEncryptedDataParted.end(); i+=partSize.getCurrent()) {
@@ -977,44 +989,44 @@ void SymmetricAlgorithmTests::testDesEncryptDecrypt()
977989

978990
// Generate all combinations of session/token keys.
979991
rv = generateDesKey(hSessionRW,IN_SESSION,IS_PUBLIC,hKey);
980-
CPPUNIT_ASSERT(rv == CKR_OK);
981-
982-
encryptDecrypt(CKM_DES_CBC_PAD,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST-1);
983-
encryptDecrypt(CKM_DES_CBC_PAD,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST+1);
984-
encryptDecrypt(CKM_DES_CBC_PAD,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST);
985-
encryptDecrypt(CKM_DES_CBC,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST);
986-
encryptDecrypt(CKM_DES_CBC,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
987-
encryptDecrypt(CKM_DES_ECB,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST);
988-
encryptDecrypt(CKM_DES_ECB,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
992+
if (rv == CKR_OK) {
993+
encryptDecrypt(CKM_DES_CBC_PAD,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST-1);
994+
encryptDecrypt(CKM_DES_CBC_PAD,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST+1);
995+
encryptDecrypt(CKM_DES_CBC_PAD,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST);
996+
encryptDecrypt(CKM_DES_CBC,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST);
997+
encryptDecrypt(CKM_DES_CBC,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
998+
encryptDecrypt(CKM_DES_ECB,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST);
999+
encryptDecrypt(CKM_DES_ECB,blockSize,hSessionRO,hKey,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
1000+
}
9891001

9901002
CK_OBJECT_HANDLE hKey2 = CK_INVALID_HANDLE;
9911003

9921004
// Generate all combinations of session/token keys.
9931005
rv = generateDes2Key(hSessionRW,IN_SESSION,IS_PUBLIC,hKey2);
994-
CPPUNIT_ASSERT(rv == CKR_OK);
995-
996-
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST-1);
997-
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST+1);
998-
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST);
999-
encryptDecrypt(CKM_DES3_CBC,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST);
1000-
encryptDecrypt(CKM_DES3_CBC,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
1001-
encryptDecrypt(CKM_DES3_ECB,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST);
1002-
encryptDecrypt(CKM_DES3_ECB,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
1006+
if (rv == CKR_OK) {
1007+
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST-1);
1008+
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST+1);
1009+
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST);
1010+
encryptDecrypt(CKM_DES3_CBC,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST);
1011+
encryptDecrypt(CKM_DES3_CBC,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
1012+
encryptDecrypt(CKM_DES3_ECB,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST);
1013+
encryptDecrypt(CKM_DES3_ECB,blockSize,hSessionRO,hKey2,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
1014+
}
10031015
#endif
10041016

10051017
CK_OBJECT_HANDLE hKey3 = CK_INVALID_HANDLE;
10061018

10071019
// Generate all combinations of session/token keys.
10081020
rv = generateDes3Key(hSessionRW,IN_SESSION,IS_PUBLIC,hKey3);
1009-
CPPUNIT_ASSERT(rv == CKR_OK);
1010-
1011-
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST-1);
1012-
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST+1);
1013-
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST);
1014-
encryptDecrypt(CKM_DES3_CBC,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST);
1015-
encryptDecrypt(CKM_DES3_CBC,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
1016-
encryptDecrypt(CKM_DES3_ECB,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST);
1017-
encryptDecrypt(CKM_DES3_ECB,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
1021+
if (rv == CKR_OK) {
1022+
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST-1);
1023+
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST+1);
1024+
encryptDecrypt(CKM_DES3_CBC_PAD,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST);
1025+
encryptDecrypt(CKM_DES3_CBC,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST);
1026+
encryptDecrypt(CKM_DES3_CBC,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
1027+
encryptDecrypt(CKM_DES3_ECB,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST);
1028+
encryptDecrypt(CKM_DES3_ECB,blockSize,hSessionRO,hKey3,blockSize*NR_OF_BLOCKS_IN_TEST+1, false);
1029+
}
10181030
}
10191031

10201032
void SymmetricAlgorithmTests::testNullTemplate()

0 commit comments

Comments
 (0)