diff --git a/.gitmodules b/.gitmodules index 17229a28ce..b3d1bfc0bf 100644 --- a/.gitmodules +++ b/.gitmodules @@ -14,4 +14,5 @@ branch = witx-next [submodule "crates/wasi-crypto/spec"] path = crates/wasi-crypto/spec - url = https://github.com/WebAssembly/wasi-crypto.git + url = https://github.com/alexcrichton/wasi-crypto.git + branch = witx-next diff --git a/crates/wasi-crypto/spec b/crates/wasi-crypto/spec index 6d7821dec3..3ed3f0796d 160000 --- a/crates/wasi-crypto/spec +++ b/crates/wasi-crypto/spec @@ -1 +1 @@ -Subproject commit 6d7821dec301a11dcf3c0d50e5a51af5169eaee3 +Subproject commit 3ed3f0796db3c24e170cb86fe70d86a9e1c5d683 diff --git a/crates/wasi-crypto/src/wiggle_interfaces/asymmetric_common.rs b/crates/wasi-crypto/src/wiggle_interfaces/asymmetric_common.rs index ea94966b33..79cef9d68c 100644 --- a/crates/wasi-crypto/src/wiggle_interfaces/asymmetric_common.rs +++ b/crates/wasi-crypto/src/wiggle_interfaces/asymmetric_common.rs @@ -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 { 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( diff --git a/crates/wasi-crypto/src/wiggle_interfaces/common.rs b/crates/wasi-crypto/src/wiggle_interfaces/common.rs index 25969df1c9..be7b49b30a 100644 --- a/crates/wasi-crypto/src/wiggle_interfaces/common.rs +++ b/crates/wasi-crypto/src/wiggle_interfaces/common.rs @@ -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 for AlgorithmType { } } } - -impl From for Version { - fn from(version: guest_types::Version) -> Self { - Version(version.into()) - } -} - -impl From for guest_types::Version { - fn from(version: Version) -> Self { - version.into() - } -} diff --git a/crates/wasi-crypto/src/wiggle_interfaces/symmetric.rs b/crates/wasi-crypto/src/wiggle_interfaces/symmetric.rs index b14abc34b3..89d33ce8ec 100644 --- a/crates/wasi-crypto/src/wiggle_interfaces/symmetric.rs +++ b/crates/wasi-crypto/src/wiggle_interfaces/symmetric.rs @@ -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(