Re-apply SimultaneousDecrypt tests
A recent merge accidentally removed the unit tests SimultaneousDecrypt* from oemcrypto_test. Also the unit test GetKeyDataNullPointer was disabled. This CL puts those tests back in. bug: 26892550 Change-Id: I9d8f0a38e65727231543248135366331a6f52b02
This commit is contained in:
committed by
Jeff Tinker
parent
e0da404b14
commit
213fee8bb7
@@ -1646,9 +1646,7 @@ TEST_F(OEMCryptoKeyboxTest, NormalGetKeyData) {
|
||||
ASSERT_EQ(OEMCrypto_SUCCESS, sts);
|
||||
}
|
||||
|
||||
// TODO(fredgc): warn people that this will be turned on. It causes a
|
||||
// seg fault on some devices at the moment.
|
||||
TEST_F(OEMCryptoKeyboxTest, DISABLED_GetKeyDataNullPointer) {
|
||||
TEST_F(OEMCryptoKeyboxTest, GetKeyDataNullPointer) {
|
||||
OEMCryptoResult sts;
|
||||
uint8_t key_data[256];
|
||||
sts = OEMCrypto_GetKeyData(key_data, NULL);
|
||||
@@ -2366,6 +2364,59 @@ TEST_F(OEMCryptoSessionTests, DecryptZeroDuration) {
|
||||
ASSERT_NO_FATAL_FAILURE(s.TestDecryptCTR());
|
||||
}
|
||||
|
||||
TEST_F(OEMCryptoSessionTests, SimultaneousDecrypt) {
|
||||
vector<Session> s(8);
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].open());
|
||||
}
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].GenerateTestSessionKeys());
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].FillSimpleMessage(kDuration, 0,
|
||||
s[i].get_nonce()));
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].EncryptAndSign());
|
||||
}
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].LoadTestKeys());
|
||||
}
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].TestDecryptCTR());
|
||||
}
|
||||
// Second call to decrypt for each session.
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].TestDecryptCTR());
|
||||
}
|
||||
}
|
||||
|
||||
TEST_F(OEMCryptoSessionTests, SimultaneousDecryptWithLostMessage) {
|
||||
vector<Session> s(8);
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].open());
|
||||
}
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].GenerateTestSessionKeys());
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].FillSimpleMessage(kDuration, 0,
|
||||
s[i].get_nonce()));
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].EncryptAndSign());
|
||||
}
|
||||
// First set of messages are lost. Generate second set.
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].GenerateTestSessionKeys());
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].FillSimpleMessage(kDuration, 0,
|
||||
s[i].get_nonce()));
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].EncryptAndSign());
|
||||
}
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].LoadTestKeys());
|
||||
}
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].TestDecryptCTR());
|
||||
}
|
||||
// Second call to decrypt for each session.
|
||||
for (int i = 0; i < 8; i++) {
|
||||
ASSERT_NO_FATAL_FAILURE(s[i].TestDecryptCTR());
|
||||
}
|
||||
}
|
||||
|
||||
struct SampleSize {
|
||||
size_t clear_size;
|
||||
size_t encrypted_size;
|
||||
|
||||
Reference in New Issue
Block a user