diff options
-rw-r--r-- | keystore-engine/android_engine.cpp | 9 | ||||
-rw-r--r-- | keystore-engine/methods.h | 6 | ||||
-rw-r--r-- | keystore/key_store_service.cpp | 2 | ||||
-rw-r--r-- | keystore/keystore.cpp | 4 | ||||
-rw-r--r-- | keystore/keystore_utils.h | 6 | ||||
-rw-r--r-- | softkeymaster/keymaster_openssl.cpp | 32 |
6 files changed, 30 insertions, 29 deletions
diff --git a/keystore-engine/android_engine.cpp b/keystore-engine/android_engine.cpp index 25d426fe..b7b81992 100644 --- a/keystore-engine/android_engine.cpp +++ b/keystore-engine/android_engine.cpp @@ -21,7 +21,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #define LOG_TAG "keystore-engine" -#include <UniquePtr.h> #include <pthread.h> #include <sys/socket.h> @@ -40,6 +39,8 @@ #include <openssl/rsa.h> #include <openssl/x509.h> +#include <memory> + #ifndef BACKEND_WIFI_HIDL #include "keystore_backend_binder.h" #else @@ -291,21 +292,21 @@ struct EVP_PKEY_Delete { EVP_PKEY_free(p); } }; -typedef UniquePtr<EVP_PKEY, EVP_PKEY_Delete> Unique_EVP_PKEY; +typedef std::unique_ptr<EVP_PKEY, EVP_PKEY_Delete> Unique_EVP_PKEY; struct RSA_Delete { void operator()(RSA* p) const { RSA_free(p); } }; -typedef UniquePtr<RSA, RSA_Delete> Unique_RSA; +typedef std::unique_ptr<RSA, RSA_Delete> Unique_RSA; struct EC_KEY_Delete { void operator()(EC_KEY* ec) const { EC_KEY_free(ec); } }; -typedef UniquePtr<EC_KEY, EC_KEY_Delete> Unique_EC_KEY; +typedef std::unique_ptr<EC_KEY, EC_KEY_Delete> Unique_EC_KEY; /* wrap_rsa returns an |EVP_PKEY| that contains an RSA key where the public * part is taken from |public_rsa| and the private operations are forwarded to diff --git a/keystore-engine/methods.h b/keystore-engine/methods.h index fb85942d..da54ce29 100644 --- a/keystore-engine/methods.h +++ b/keystore-engine/methods.h @@ -34,21 +34,21 @@ struct DSA_Delete { DSA_free(p); } }; -typedef UniquePtr<DSA, struct DSA_Delete> Unique_DSA; +typedef std::unique_ptr<DSA, struct DSA_Delete> Unique_DSA; struct EC_KEY_Delete { void operator()(EC_KEY* p) const { EC_KEY_free(p); } }; -typedef UniquePtr<EC_KEY, EC_KEY_Delete> Unique_EC_KEY; +typedef std::unique_ptr<EC_KEY, EC_KEY_Delete> Unique_EC_KEY; struct RSA_Delete { void operator()(RSA* p) const { RSA_free(p); } }; -typedef UniquePtr<RSA, struct RSA_Delete> Unique_RSA; +typedef std::unique_ptr<RSA, struct RSA_Delete> Unique_RSA; /* Keyhandles for ENGINE metadata */ diff --git a/keystore/key_store_service.cpp b/keystore/key_store_service.cpp index 248fa00f..5f05e018 100644 --- a/keystore/key_store_service.cpp +++ b/keystore/key_store_service.cpp @@ -52,7 +52,7 @@ const char* kTimestampFilePath = "timestamp"; struct BIGNUM_Delete { void operator()(BIGNUM* p) const { BN_free(p); } }; -typedef UniquePtr<BIGNUM, BIGNUM_Delete> Unique_BIGNUM; +typedef std::unique_ptr<BIGNUM, BIGNUM_Delete> Unique_BIGNUM; bool containsTag(const hidl_vec<KeyParameter>& params, Tag tag) { return params.end() != std::find_if(params.begin(), params.end(), diff --git a/keystore/keystore.cpp b/keystore/keystore.cpp index bc2e0dc7..130a30e6 100644 --- a/keystore/keystore.cpp +++ b/keystore/keystore.cpp @@ -647,7 +647,7 @@ bool KeyStore::upgradeBlob(const char* filename, Blob* blob, const uint8_t oldVe struct BIO_Delete { void operator()(BIO* p) const { BIO_free(p); } }; -typedef UniquePtr<BIO, BIO_Delete> Unique_BIO; +typedef std::unique_ptr<BIO, BIO_Delete> Unique_BIO; ResponseCode KeyStore::importBlobAsKey(Blob* blob, const char* filename, uid_t uid) { // We won't even write to the blob directly with this BIO, so const_cast is okay. @@ -670,7 +670,7 @@ ResponseCode KeyStore::importBlobAsKey(Blob* blob, const char* filename, uid_t u return ResponseCode::SYSTEM_ERROR; } - UniquePtr<unsigned char[]> pkcs8key(new unsigned char[len]); + std::unique_ptr<unsigned char[]> pkcs8key(new unsigned char[len]); uint8_t* tmp = pkcs8key.get(); if (i2d_PKCS8_PRIV_KEY_INFO(pkcs8.get(), &tmp) != len) { ALOGE("Couldn't convert to PKCS#8"); diff --git a/keystore/keystore_utils.h b/keystore/keystore_utils.h index 0f7922a0..f970559f 100644 --- a/keystore/keystore_utils.h +++ b/keystore/keystore_utils.h @@ -26,7 +26,7 @@ #include <hardware/keymaster_defs.h> -#include <UniquePtr.h> +#include <memory> #include <keystore/authorization_set.h> @@ -52,12 +52,12 @@ uid_t get_user_id(uid_t uid); struct EVP_PKEY_Delete { void operator()(EVP_PKEY* p) const { EVP_PKEY_free(p); } }; -typedef UniquePtr<EVP_PKEY, EVP_PKEY_Delete> Unique_EVP_PKEY; +typedef std::unique_ptr<EVP_PKEY, EVP_PKEY_Delete> Unique_EVP_PKEY; struct PKCS8_PRIV_KEY_INFO_Delete { void operator()(PKCS8_PRIV_KEY_INFO* p) const { PKCS8_PRIV_KEY_INFO_free(p); } }; -typedef UniquePtr<PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO_Delete> Unique_PKCS8_PRIV_KEY_INFO; +typedef std::unique_ptr<PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO_Delete> Unique_PKCS8_PRIV_KEY_INFO; namespace keystore { diff --git a/softkeymaster/keymaster_openssl.cpp b/softkeymaster/keymaster_openssl.cpp index 927b4a60..f4d55bd4 100644 --- a/softkeymaster/keymaster_openssl.cpp +++ b/softkeymaster/keymaster_openssl.cpp @@ -29,7 +29,7 @@ #include <openssl/err.h> #include <openssl/x509.h> -#include <UniquePtr.h> +#include <memory> // For debugging // #define LOG_NDEBUG 0 @@ -40,43 +40,43 @@ struct BIGNUM_Delete { void operator()(BIGNUM* p) const { BN_free(p); } }; -typedef UniquePtr<BIGNUM, BIGNUM_Delete> Unique_BIGNUM; +typedef std::unique_ptr<BIGNUM, BIGNUM_Delete> Unique_BIGNUM; struct EVP_PKEY_Delete { void operator()(EVP_PKEY* p) const { EVP_PKEY_free(p); } }; -typedef UniquePtr<EVP_PKEY, EVP_PKEY_Delete> Unique_EVP_PKEY; +typedef std::unique_ptr<EVP_PKEY, EVP_PKEY_Delete> Unique_EVP_PKEY; struct PKCS8_PRIV_KEY_INFO_Delete { void operator()(PKCS8_PRIV_KEY_INFO* p) const { PKCS8_PRIV_KEY_INFO_free(p); } }; -typedef UniquePtr<PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO_Delete> Unique_PKCS8_PRIV_KEY_INFO; +typedef std::unique_ptr<PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO_Delete> Unique_PKCS8_PRIV_KEY_INFO; struct DSA_Delete { void operator()(DSA* p) const { DSA_free(p); } }; -typedef UniquePtr<DSA, DSA_Delete> Unique_DSA; +typedef std::unique_ptr<DSA, DSA_Delete> Unique_DSA; struct EC_KEY_Delete { void operator()(EC_KEY* p) const { EC_KEY_free(p); } }; -typedef UniquePtr<EC_KEY, EC_KEY_Delete> Unique_EC_KEY; +typedef std::unique_ptr<EC_KEY, EC_KEY_Delete> Unique_EC_KEY; struct EC_GROUP_Delete { void operator()(EC_GROUP* p) const { EC_GROUP_free(p); } }; -typedef UniquePtr<EC_GROUP, EC_GROUP_Delete> Unique_EC_GROUP; +typedef std::unique_ptr<EC_GROUP, EC_GROUP_Delete> Unique_EC_GROUP; struct RSA_Delete { void operator()(RSA* p) const { RSA_free(p); } }; -typedef UniquePtr<RSA, RSA_Delete> Unique_RSA; +typedef std::unique_ptr<RSA, RSA_Delete> Unique_RSA; struct Malloc_Free { void operator()(void* p) const { free(p); } }; -typedef UniquePtr<keymaster0_device_t> Unique_keymaster_device_t; +typedef std::unique_ptr<keymaster0_device_t> Unique_keymaster_device_t; /** * Many OpenSSL APIs take ownership of an argument on success but @@ -85,7 +85,7 @@ typedef UniquePtr<keymaster0_device_t> Unique_keymaster_device_t; * triggering a warning by not using the result of release(). */ template <typename T, typename Delete_T> -inline void release_because_ownership_transferred(UniquePtr<T, Delete_T>& p) { +inline void release_because_ownership_transferred(std::unique_ptr<T, Delete_T>& p) { T* val __attribute__((unused)) = p.release(); } @@ -124,7 +124,7 @@ static int wrap_key(EVP_PKEY* pkey, int type, uint8_t** keyBlob, size_t* keyBlob sizeof(privateLen) + publicLen; // derData will be returned to the caller, so allocate it with malloc. - UniquePtr<unsigned char, Malloc_Free> derData( + std::unique_ptr<unsigned char, Malloc_Free> derData( static_cast<unsigned char*>(malloc(*keyBlobLength))); if (derData.get() == NULL) { ALOGE("could not allocate memory for key blob"); @@ -446,7 +446,7 @@ __attribute__((visibility("default"))) int openssl_get_keypair_public(const keym return -1; } - UniquePtr<uint8_t, Malloc_Free> key(static_cast<uint8_t*>(malloc(len))); + std::unique_ptr<uint8_t, Malloc_Free> key(static_cast<uint8_t*>(malloc(len))); if (key.get() == NULL) { ALOGE("Could not allocate memory for public key data"); return -1; @@ -479,7 +479,7 @@ static int sign_dsa(EVP_PKEY* pkey, keymaster_dsa_sign_params_t* sign_params, co } unsigned int dsaSize = DSA_size(dsa.get()); - UniquePtr<uint8_t, Malloc_Free> signedDataPtr(reinterpret_cast<uint8_t*>(malloc(dsaSize))); + std::unique_ptr<uint8_t, Malloc_Free> signedDataPtr(reinterpret_cast<uint8_t*>(malloc(dsaSize))); if (signedDataPtr.get() == NULL) { logOpenSSLError("openssl_sign_dsa"); return -1; @@ -511,7 +511,7 @@ static int sign_ec(EVP_PKEY* pkey, keymaster_ec_sign_params_t* sign_params, cons } unsigned int ecdsaSize = ECDSA_size(eckey.get()); - UniquePtr<uint8_t, Malloc_Free> signedDataPtr(reinterpret_cast<uint8_t*>(malloc(ecdsaSize))); + std::unique_ptr<uint8_t, Malloc_Free> signedDataPtr(reinterpret_cast<uint8_t*>(malloc(ecdsaSize))); if (signedDataPtr.get() == NULL) { logOpenSSLError("openssl_sign_ec"); return -1; @@ -545,7 +545,7 @@ static int sign_rsa(EVP_PKEY* pkey, keymaster_rsa_sign_params_t* sign_params, co return -1; } - UniquePtr<uint8_t, Malloc_Free> signedDataPtr(reinterpret_cast<uint8_t*>(malloc(dataLength))); + std::unique_ptr<uint8_t, Malloc_Free> signedDataPtr(reinterpret_cast<uint8_t*>(malloc(dataLength))); if (signedDataPtr.get() == NULL) { logOpenSSLError("openssl_sign_rsa"); return -1; @@ -667,7 +667,7 @@ static int verify_rsa(EVP_PKEY* pkey, keymaster_rsa_sign_params_t* sign_params, return -1; } - UniquePtr<uint8_t[]> dataPtr(new uint8_t[signedDataLength]); + std::unique_ptr<uint8_t[]> dataPtr(new uint8_t[signedDataLength]); if (dataPtr.get() == NULL) { logOpenSSLError("openssl_verify_data"); return -1; |