diff --git a/CHANGELOG.md b/CHANGELOG.md index 522eb0f..a6afe91 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,9 @@ ## [Unreleased][] -- +### Changed + +- Update `cbor-smol` dependency to v0.5.0 [Unreleased]: https://github.com/trussed-dev/trussed-staging/compare/v0.3.0...HEAD diff --git a/Cargo.toml b/Cargo.toml index 31c8c0a..6c34bdd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -39,7 +39,7 @@ iso7816 = "0.1.1" hmac = "0.12.1" rand = { version = "0.8.5", default-features = false } littlefs2 = "0.4.0" -cbor-smol = "0.4.0" +cbor-smol = { version = "0.5.0", features = ["heapless-bytes-v0-3"] } serde_bytes = { version = "0.11.12", default-features = false } trussed-rsa-alloc = "0.2.1" postcard = "0.7.3" diff --git a/src/staging.rs b/src/staging.rs index 61d183b..6b960ea 100644 --- a/src/staging.rs +++ b/src/staging.rs @@ -484,7 +484,9 @@ impl UnsealedKey { // encoding: |map(2) | text(1) | "d" | bytes (len as u16) | MAX_SERIALIZED_KEY_LENGTH | data // | text(1) | "k" | array(1 if core, 2 if se050) | discriminator | (discriminiator) if se050 | fn serialize(&self) -> Bytes<{ MAX_SERIALIZED_KEY_LENGTH + 11 + HPKE_OVERHEAD }> { - cbor_smol::cbor_serialize_bytes(&self).unwrap() + let mut data = Bytes::new(); + cbor_smol::cbor_serialize_to(&self, &mut data).unwrap(); + data } fn try_deserialize(data: &[u8]) -> Result { cbor_smol::cbor_deserialize(data).map_err(|_| Error::CborError)