Skip to content

Commit 52da3d0

Browse files
committed
Rename Mbed" to MbedCrypto
Also activate the MbedCrypto provider on the CI Signed-off-by: Hugues de Valon <hugues.devalon@arm.com>
1 parent 60f61f7 commit 52da3d0

File tree

12 files changed

+40
-43
lines changed

12 files changed

+40
-43
lines changed

Cargo.toml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,4 @@ mbed-crypto-provider = ["psa-crypto"]
7272
pkcs11-provider = ["pkcs11", "picky-asn1-der", "picky-asn1", "picky-asn1-x509"]
7373
tpm-provider = ["tss-esapi", "picky-asn1-der", "picky-asn1", "picky-asn1-x509"]
7474
all-providers = ["tpm-provider", "pkcs11-provider", "mbed-crypto-provider"]
75-
# The Mbed provider is not included in the docs because of 2 reasons:
76-
# 1) it is currently impossible for it to be built inside the docs.rs build system (as it has dependencies
77-
# that cannot be fulfilled)
78-
# 2) we are currently not expecting the mbed provider to be used in prod and hence there should be little
79-
# appetite for developers to understand the code.
80-
docs = ["pkcs11-provider", "tpm-provider", "tss-esapi/docs"]
75+
docs = ["pkcs11-provider", "tpm-provider", "tss-esapi/docs", "mbed-crypto-provider"]

ci.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ else
151151
# It is tested in test "should_have_been_deleted".
152152
# This test does not make sense for the TPM provider.
153153
if [ "$PROVIDER_NAME" = "mbed-crypto" ]; then
154-
echo "Create a fake mapping file for Mbed Provider"
154+
echo "Create a fake mapping file for Mbed Crypto Provider"
155155
mkdir -p mappings/cm9vdA==/1
156156
printf '\x04\x00\x00\x00\x00\x00\x00\x00\xd8\x9e\xa3\x05\x01\x00\x00\x00' > mappings/cm9vdA==/1/VGVzdCBLZXk\=
157157
printf '\x09\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00' >> mappings/cm9vdA==/1/VGVzdCBLZXk\=

fuzz/config.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ name = "on-disk-manager"
99
manager_type = "OnDisk"
1010

1111
# [[provider]]
12-
# provider_type = "MbedProvider"
12+
# provider_type = "MbedCryptoProvider"
1313
# key_info_manager = "on-disk-manager"
1414

1515
[[provider]]

src/providers/mbed_provider/aead.rs renamed to src/providers/mbed_crypto_provider/aead.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
// Copyright 2020 Contributors to the Parsec project.
22
// SPDX-License-Identifier: Apache-2.0
3-
use super::{key_management, MbedProvider};
3+
use super::{key_management, MbedCryptoProvider};
44
use crate::authenticators::ApplicationName;
55
use crate::key_info_managers::KeyTriple;
66
use parsec_interface::operations::{psa_aead_decrypt, psa_aead_encrypt};
77
use parsec_interface::requests::{ProviderID, ResponseStatus, Result};
88
use psa_crypto::operations::aead;
99
use psa_crypto::types::key;
1010

11-
impl MbedProvider {
11+
impl MbedCryptoProvider {
1212
pub(super) fn psa_aead_encrypt_internal(
1313
&self,
1414
app_name: ApplicationName,

src/providers/mbed_provider/asym_encryption.rs renamed to src/providers/mbed_crypto_provider/asym_encryption.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
// Copyright 2020 Contributors to the Parsec project.
22
// SPDX-License-Identifier: Apache-2.0
3-
use super::{key_management, MbedProvider};
3+
use super::{key_management, MbedCryptoProvider};
44
use crate::authenticators::ApplicationName;
55
use crate::key_info_managers::KeyTriple;
66
use parsec_interface::operations::{psa_asymmetric_decrypt, psa_asymmetric_encrypt};
77
use parsec_interface::requests::{ProviderID, ResponseStatus, Result};
88
use psa_crypto::operations::asym_encryption;
99
use psa_crypto::types::key;
1010

11-
impl MbedProvider {
11+
impl MbedCryptoProvider {
1212
pub(super) fn psa_asymmetric_encrypt_internal(
1313
&self,
1414
app_name: ApplicationName,

src/providers/mbed_provider/asym_sign.rs renamed to src/providers/mbed_crypto_provider/asym_sign.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
// Copyright 2020 Contributors to the Parsec project.
22
// SPDX-License-Identifier: Apache-2.0
3-
use super::{key_management, MbedProvider};
3+
use super::{key_management, MbedCryptoProvider};
44
use crate::authenticators::ApplicationName;
55
use crate::key_info_managers::KeyTriple;
66
use parsec_interface::operations::{psa_sign_hash, psa_verify_hash};
77
use parsec_interface::requests::{ProviderID, ResponseStatus, Result};
88
use psa_crypto::operations::asym_signature;
99
use psa_crypto::types::key;
1010

11-
impl MbedProvider {
11+
impl MbedCryptoProvider {
1212
pub(super) fn psa_sign_hash_internal(
1313
&self,
1414
app_name: ApplicationName,

src/providers/mbed_provider/hash.rs renamed to src/providers/mbed_crypto_provider/hash.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
// Copyright 2020 Contributors to the Parsec project.
22
// SPDX-License-Identifier: Apache-2.0
3-
use super::MbedProvider;
3+
use super::MbedCryptoProvider;
44
use parsec_interface::operations::{psa_hash_compare, psa_hash_compute};
55
use parsec_interface::requests::{ResponseStatus, Result};
66
use psa_crypto::operations::hash;
77

8-
impl MbedProvider {
8+
impl MbedCryptoProvider {
99
pub(super) fn psa_hash_compute_internal(
1010
&self,
1111
op: psa_hash_compute::Operation,

src/providers/mbed_provider/key_agreement.rs renamed to src/providers/mbed_crypto_provider/key_agreement.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// Copyright 2020 Contributors to the Parsec project.
22
// SPDX-License-Identifier: Apache-2.0
3-
use super::{key_management, MbedProvider};
3+
use super::{key_management, MbedCryptoProvider};
44
use crate::authenticators::ApplicationName;
55
use crate::key_info_managers::KeyTriple;
66
use parsec_interface::operations::psa_raw_key_agreement;
@@ -9,7 +9,7 @@ use parsec_interface::secrecy::Secret;
99
use psa_crypto::operations::key_agreement;
1010
use psa_crypto::types::key;
1111

12-
impl MbedProvider {
12+
impl MbedCryptoProvider {
1313
pub(super) fn psa_raw_key_agreement(
1414
&self,
1515
app_name: ApplicationName,

src/providers/mbed_provider/key_management.rs renamed to src/providers/mbed_crypto_provider/key_management.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// Copyright 2020 Contributors to the Parsec project.
22
// SPDX-License-Identifier: Apache-2.0
3-
use super::MbedProvider;
3+
use super::MbedCryptoProvider;
44
use crate::authenticators::ApplicationName;
55
use crate::key_info_managers;
66
use crate::key_info_managers::{KeyInfo, KeyTriple, ManageKeyInfo};
@@ -90,7 +90,7 @@ pub fn key_info_exists(key_triple: &KeyTriple, store_handle: &dyn ManageKeyInfo)
9090
.map_err(key_info_managers::to_response_status)
9191
}
9292

93-
impl MbedProvider {
93+
impl MbedCryptoProvider {
9494
pub(super) fn psa_generate_key_internal(
9595
&self,
9696
app_name: ApplicationName,

src/providers/mbed_provider/mod.rs renamed to src/providers/mbed_crypto_provider/mod.rs

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ const SUPPORTED_OPCODES: [Opcode; 14] = [
4848

4949
#[derive(Derivative)]
5050
#[derivative(Debug)]
51-
pub struct MbedProvider {
51+
pub struct MbedCryptoProvider {
5252
// When calling write on a reference of key_info_store, a type
5353
// std::sync::RwLockWriteGuard<dyn ManageKeyInfo + Send + Sync> is returned. We need to use the
5454
// dereference operator (*) to access the inner type dyn ManageKeyInfo + Send + Sync and then
@@ -67,33 +67,35 @@ pub struct MbedProvider {
6767
id_counter: AtomicU32,
6868
}
6969

70-
impl MbedProvider {
71-
/// Creates and initialise a new instance of MbedProvider.
72-
/// Checks if there are not more keys stored in the Key Info Manager than in the MbedProvider and
70+
impl MbedCryptoProvider {
71+
/// Creates and initialise a new instance of MbedCryptoProvider.
72+
/// Checks if there are not more keys stored in the Key Info Manager than in the MbedCryptoProvider and
7373
/// if there, delete them. Adds Key IDs currently in use in the local IDs store.
7474
/// Returns `None` if the initialisation failed.
75-
fn new(key_info_store: Arc<RwLock<dyn ManageKeyInfo + Send + Sync>>) -> Option<MbedProvider> {
75+
fn new(
76+
key_info_store: Arc<RwLock<dyn ManageKeyInfo + Send + Sync>>,
77+
) -> Option<MbedCryptoProvider> {
7678
// Safety: this function should be called before any of the other Mbed Crypto functions
7779
// are.
7880
if let Err(error) = psa_crypto::init() {
7981
format_error!("Error when initialising Mbed Crypto", error);
8082
return None;
8183
}
82-
let mbed_provider = MbedProvider {
84+
let mbed_crypto_provider = MbedCryptoProvider {
8385
key_info_store,
8486
key_handle_mutex: Mutex::new(()),
8587
id_counter: AtomicU32::new(key::PSA_KEY_ID_USER_MIN),
8688
};
8789
let mut max_key_id: key::psa_key_id_t = key::PSA_KEY_ID_USER_MIN;
8890
{
8991
// The local scope allows to drop store_handle and local_ids_handle in order to return
90-
// the mbed_provider.
91-
let mut store_handle = mbed_provider
92+
// the mbed_crypto_provider.
93+
let mut store_handle = mbed_crypto_provider
9294
.key_info_store
9395
.write()
9496
.expect("Key store lock poisoned");
9597
let mut to_remove: Vec<KeyTriple> = Vec::new();
96-
// Go through all MbedProvider key triple to key info mappings and check if they are still
98+
// Go through all MbedCryptoProvider key triple to key info mappings and check if they are still
9799
// present.
98100
// Delete those who are not present and add to the local_store the ones present.
99101
match store_handle.get_all(ProviderID::MbedCrypto) {
@@ -135,12 +137,12 @@ impl MbedProvider {
135137
}
136138
}
137139
}
138-
mbed_provider.id_counter.store(max_key_id, Relaxed);
139-
Some(mbed_provider)
140+
mbed_crypto_provider.id_counter.store(max_key_id, Relaxed);
141+
Some(mbed_crypto_provider)
140142
}
141143
}
142144

143-
impl Provide for MbedProvider {
145+
impl Provide for MbedCryptoProvider {
144146
fn describe(&self) -> Result<(ProviderInfo, HashSet<Opcode>)> {
145147
trace!("describe ingress");
146148
Ok((ProviderInfo {
@@ -282,36 +284,36 @@ impl Provide for MbedProvider {
282284

283285
#[derive(Default, Derivative)]
284286
#[derivative(Debug)]
285-
pub struct MbedProviderBuilder {
287+
pub struct MbedCryptoProviderBuilder {
286288
#[derivative(Debug = "ignore")]
287289
key_info_store: Option<Arc<RwLock<dyn ManageKeyInfo + Send + Sync>>>,
288290
}
289291

290-
impl MbedProviderBuilder {
291-
pub fn new() -> MbedProviderBuilder {
292-
MbedProviderBuilder {
292+
impl MbedCryptoProviderBuilder {
293+
pub fn new() -> MbedCryptoProviderBuilder {
294+
MbedCryptoProviderBuilder {
293295
key_info_store: None,
294296
}
295297
}
296298

297299
pub fn with_key_info_store(
298300
mut self,
299301
key_info_store: Arc<RwLock<dyn ManageKeyInfo + Send + Sync>>,
300-
) -> MbedProviderBuilder {
302+
) -> MbedCryptoProviderBuilder {
301303
self.key_info_store = Some(key_info_store);
302304

303305
self
304306
}
305307

306-
pub fn build(self) -> std::io::Result<MbedProvider> {
307-
MbedProvider::new(
308+
pub fn build(self) -> std::io::Result<MbedCryptoProvider> {
309+
MbedCryptoProvider::new(
308310
self.key_info_store
309311
.ok_or_else(|| Error::new(ErrorKind::InvalidData, "missing key info store"))?,
310312
)
311313
.ok_or_else(|| {
312314
Error::new(
313315
ErrorKind::InvalidData,
314-
"Mbed Provider initialization failed",
316+
"MbedCrypto Provider initialization failed",
315317
)
316318
})
317319
}

0 commit comments

Comments
 (0)