summaryrefslogtreecommitdiff
path: root/contexts/pure_soft_keymaster_context.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'contexts/pure_soft_keymaster_context.cpp')
-rw-r--r--contexts/pure_soft_keymaster_context.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/contexts/pure_soft_keymaster_context.cpp b/contexts/pure_soft_keymaster_context.cpp
index e9d8245..937238b 100644
--- a/contexts/pure_soft_keymaster_context.cpp
+++ b/contexts/pure_soft_keymaster_context.cpp
@@ -54,11 +54,14 @@ PureSoftKeymasterContext::PureSoftKeymasterContext(KmVersion version,
keymaster_security_level_t security_level)
: SoftAttestationContext(version),
- rsa_factory_(new RsaKeyFactory(*this /* blob_maker */, *this /* context */)),
- ec_factory_(new EcKeyFactory(*this /* blob_maker */, *this /* context */)),
- aes_factory_(new AesKeyFactory(*this /* blob_maker */, *this /* random_source */)),
- tdes_factory_(new TripleDesKeyFactory(*this /* blob_maker */, *this /* random_source */)),
- hmac_factory_(new HmacKeyFactory(*this /* blob_maker */, *this /* random_source */)),
+ rsa_factory_(new (std::nothrow) RsaKeyFactory(*this /* blob_maker */, *this /* context */)),
+ ec_factory_(new (std::nothrow) EcKeyFactory(*this /* blob_maker */, *this /* context */)),
+ aes_factory_(new (std::nothrow)
+ AesKeyFactory(*this /* blob_maker */, *this /* random_source */)),
+ tdes_factory_(new (std::nothrow)
+ TripleDesKeyFactory(*this /* blob_maker */, *this /* random_source */)),
+ hmac_factory_(new (std::nothrow)
+ HmacKeyFactory(*this /* blob_maker */, *this /* random_source */)),
os_version_(0), os_patchlevel_(0), soft_keymaster_enforcement_(64, 64),
security_level_(security_level) {
// We're pretending to be some sort of secure hardware which supports secure key storage,