summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonrad Lipinski <k.lipinski2@partner.samsung.com>2019-06-18 17:05:40 +0200
committerKrzysztof Jackiewicz <k.jackiewicz@samsung.com>2019-06-28 14:06:36 +0000
commit45091056927dfb30e9fef48e6ac702e0f1600fdf (patch)
tree2011761455e834640720b4b3ecd31fe8b7cb0b43
parentf130b6d8dcecf0a4db7606ef53f73883c8370cd8 (diff)
downloadkey-manager-45091056927dfb30e9fef48e6ac702e0f1600fdf.tar.gz
key-manager-45091056927dfb30e9fef48e6ac702e0f1600fdf.tar.bz2
key-manager-45091056927dfb30e9fef48e6ac702e0f1600fdf.zip
Migrate tz_backend to openssl 1.1
Change-Id: Ib6b50de235f00c268e423cd5fd05f1b49ae0e902
-rw-r--r--src/manager/crypto/tz-backend/internals.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/manager/crypto/tz-backend/internals.cpp b/src/manager/crypto/tz-backend/internals.cpp
index 8aee58a8..ae67c8cd 100644
--- a/src/manager/crypto/tz-backend/internals.cpp
+++ b/src/manager/crypto/tz-backend/internals.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017 - 2019 Samsung Electronics Co., Ltd All Rights Reserved
+ * Copyright (c) 2017-2019 Samsung Electronics Co., Ltd. All rights reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -40,7 +40,7 @@ namespace {
using DSAPtr = std::unique_ptr<DSA, std::function<void(DSA*)>>;
-CKM::RawBuffer extractBignumData(BIGNUM* bn)
+CKM::RawBuffer extractBignumData(const BIGNUM* bn)
{
size_t size = static_cast<size_t>(BN_num_bytes(bn));
@@ -71,9 +71,17 @@ void generateDSAParams(const int sizeBits, CKM::RawBuffer &prime,
// at this stage dsa->p, dsa->q & dsa->r should contain our params
// extract them into buffers
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
prime = extractBignumData(dsa->p);
subprime = extractBignumData(dsa->q);
base = extractBignumData(dsa->g);
+#else
+ const BIGNUM *p, *q, *g;
+ DSA_get0_pqg(dsa.get(), &p, &q, &g);
+ prime = extractBignumData(p);
+ subprime = extractBignumData(q);
+ base = extractBignumData(g);
+#endif
}
} // namespace