Update the wasi-crypto spec

This commit is contained in:
Alex Crichton
2021-02-17 14:29:38 -08:00
committed by Andrew Brown
parent 250f11c572
commit 9ab5fa26cf
5 changed files with 14 additions and 23 deletions

View File

@@ -1,7 +1,9 @@
use super::{guest_types, WasiCryptoCtx};
use std::convert::TryInto;
use wasi_crypto::{ensure, CryptoError, KeyPairEncoding, PublicKeyEncoding, SecretKeyEncoding};
use wasi_crypto::{
ensure, CryptoError, KeyPairEncoding, PublicKeyEncoding, SecretKeyEncoding, Version,
};
impl super::wasi_ephemeral_crypto_asymmetric_common::WasiEphemeralCryptoAsymmetricCommon
for WasiCryptoCtx
@@ -57,7 +59,7 @@ impl super::wasi_ephemeral_crypto_asymmetric_common::WasiEphemeralCryptoAsymmetr
kp_old_handle.into(),
kp_new_handle.into(),
)?
.into())
.0)
}
fn keypair_from_id(
@@ -69,7 +71,7 @@ impl super::wasi_ephemeral_crypto_asymmetric_common::WasiEphemeralCryptoAsymmetr
) -> Result<guest_types::Keypair, guest_types::CryptoErrno> {
let kp_id = &*kp_id_ptr.as_array(kp_id_len).as_slice()?;
Ok(self
.keypair_from_id(secrets_manager_handle.into(), kp_id, kp_version.into())?
.keypair_from_id(secrets_manager_handle.into(), kp_id, Version(kp_version))?
.into())
}
@@ -116,7 +118,7 @@ impl super::wasi_ephemeral_crypto_asymmetric_common::WasiEphemeralCryptoAsymmetr
let (kp_id, version) = self.keypair_id(kp_handle.into())?;
ensure!(kp_id.len() <= kp_id_buf.len(), CryptoError::Overflow.into());
kp_id_buf.copy_from_slice(&kp_id);
Ok((kp_id.len().try_into()?, version.into()))
Ok((kp_id.len().try_into()?, version.0))
}
fn keypair_export(

View File

@@ -111,7 +111,7 @@ impl super::wasi_ephemeral_crypto_common::WasiEphemeralCryptoCommon for WasiCryp
Ok(self.secrets_manager_invalidate(
secrets_manager_handle.into(),
key_id,
key_version.into(),
Version(key_version),
)?)
}
}
@@ -125,15 +125,3 @@ impl From<guest_types::AlgorithmType> for AlgorithmType {
}
}
}
impl From<guest_types::Version> for Version {
fn from(version: guest_types::Version) -> Self {
Version(version.into())
}
}
impl From<Version> for guest_types::Version {
fn from(version: Version) -> Self {
version.into()
}
}

View File

@@ -1,7 +1,7 @@
use super::{guest_types, WasiCryptoCtx};
use std::convert::TryInto;
use wasi_crypto::{ensure, CryptoError};
use wasi_crypto::{ensure, CryptoError, Version};
impl super::wasi_ephemeral_crypto_symmetric::WasiEphemeralCryptoSymmetric for WasiCryptoCtx {
// --- secrets_manager
@@ -55,7 +55,7 @@ impl super::wasi_ephemeral_crypto_symmetric::WasiEphemeralCryptoSymmetric for Wa
symmetric_key_old_handle.into(),
symmetric_key_new_handle.into(),
)?
.into())
.0)
}
fn symmetric_key_from_id(
@@ -72,7 +72,7 @@ impl super::wasi_ephemeral_crypto_symmetric::WasiEphemeralCryptoSymmetric for Wa
.symmetric_key_from_id(
secrets_manager_handle.into(),
symmetric_key_id,
symmetric_key_version.into(),
Version(symmetric_key_version),
)?
.into())
}
@@ -129,7 +129,7 @@ impl super::wasi_ephemeral_crypto_symmetric::WasiEphemeralCryptoSymmetric for Wa
CryptoError::Overflow.into()
);
key_id_buf.copy_from_slice(&key_id);
Ok((key_id.len().try_into()?, version.into()))
Ok((key_id.len().try_into()?, version.0))
}
fn symmetric_key_close(