diff --git a/Cargo.lock b/Cargo.lock index 1d0d0d5810..03d1818d24 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -155,9 +155,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.102" +version = "1.0.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" +checksum = "2a4385e2e34eb35d6b3efe798b9eb88096925d87726c0798709bf56d9ed84af3" [[package]] name = "api_client" @@ -446,9 +446,9 @@ checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "awaitgroup" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc17ab023b4091c10ff099f9deebaeeb59b5189df07e554c4fef042b70745d68" +checksum = "a872ceb3db05a391fbe7cf8eba07a1239b2d946eee66f9e942be9bff06206302" [[package]] name = "aws-lc-rs" @@ -735,6 +735,15 @@ dependencies = [ "generic-array", ] +[[package]] +name = "block-buffer" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2f6c7dbe95a6ed67ad9f18e57daf93a2f034c524b99fd2b76d18fdfeb6660aa" +dependencies = [ + "hybrid-array", +] + [[package]] name = "blocking" version = "1.6.2" @@ -1119,6 +1128,12 @@ dependencies = [ "crossbeam-utils", ] +[[package]] +name = "const-oid" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6ef517f0926dd24a1582492c791b6a4818a4d94e789a334894aa15b0d12f55c" + [[package]] name = "const_format" version = "0.2.36" @@ -1330,9 +1345,9 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.18" +version = "0.9.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +checksum = "2d6914041f254d6e9176c01941b21115dcfb7089e55135a35411081bd106ef3f" dependencies = [ "crossbeam-utils", ] @@ -1362,6 +1377,15 @@ dependencies = [ "typenum", ] +[[package]] +name = "crypto-common" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce6e4c961d6cd6c9a86db418387425e8bdeaf05b3c8bc1411e6dca4c252f1453" +dependencies = [ + "hybrid-array", +] + [[package]] name = "crypto-mac" version = "0.11.0" @@ -1806,10 +1830,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer 0.10.4", - "crypto-common", + "crypto-common 0.1.7", "subtle", ] +[[package]] +name = "digest" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2" +dependencies = [ + "block-buffer 0.12.1", + "const-oid", + "crypto-common 0.2.2", +] + +[[package]] +name = "dispatch2" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e0e367e4e7da84520dedcac1901e4da967309406d1e51017ae1abfb97adbd38" +dependencies = [ + "bitflags 2.11.1", + "objc2", +] + [[package]] name = "displaydoc" version = "0.2.5" @@ -2782,6 +2827,15 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" +[[package]] +name = "hybrid-array" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "818356c5132c1fede50f837ca96afbe78ff42413047f4abb886217845e1b6c8c" +dependencies = [ + "typenum", +] + [[package]] name = "hyper" version = "0.14.32" @@ -3516,7 +3570,7 @@ dependencies = [ "protobuf", "protocols", "regex", - "rstest 0.18.2", + "rstest", "rtnetlink 0.14.1", "runtime-spec", "rustjail", @@ -3527,7 +3581,7 @@ dependencies = [ "serde", "serde_json", "serial_test 0.10.0", - "sha2 0.10.9", + "sha2 0.11.0", "slog", "slog-scope", "slog-stdlog", @@ -3623,7 +3677,7 @@ dependencies = [ "quick-xml", "reqwest 0.12.28", "ron", - "rstest 0.26.1", + "rstest", "semver", "serde", "serde_json", @@ -3658,7 +3712,7 @@ dependencies = [ "libc", "log", "regex", - "rstest 0.18.2", + "rstest", "serde_json", "serde_yaml 0.9.34+deprecated", "serial_test 0.10.0", @@ -3680,7 +3734,7 @@ dependencies = [ "k8s-openapi", "kube", "log", - "rstest 0.18.2", + "rstest", "serde_yaml 0.9.34+deprecated", "tokio", ] @@ -3700,7 +3754,7 @@ dependencies = [ "oci-spec 0.8.4", "pci-ids", "rand 0.10.1", - "rstest 0.18.2", + "rstest", "runtime-spec", "serde", "serde_json", @@ -3738,7 +3792,7 @@ name = "kata-types" version = "0.1.0" dependencies = [ "anyhow", - "base64 0.13.1", + "base64 0.22.1", "bitmask-enum", "byte-unit", "crc", @@ -3751,13 +3805,13 @@ dependencies = [ "num_cpus", "oci-spec 0.8.4", "regex", - "rstest 0.18.2", + "rstest", "safe-path", "scopeguard", "serde", "serde-enum-str", "serde_json", - "sha2 0.10.9", + "sha2 0.11.0", "slog", "slog-scope", "sysctl", @@ -4716,6 +4770,15 @@ dependencies = [ "zstd 0.11.2+zstd.1.5.2", ] +[[package]] +name = "objc2" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a12a8ed07aefc768292f076dc3ac8c48f3781c8f2d5851dd3d98950e8c5a89f" +dependencies = [ + "objc2-encode", +] + [[package]] name = "objc2-core-foundation" version = "0.3.2" @@ -4723,6 +4786,45 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" dependencies = [ "bitflags 2.11.1", + "dispatch2", + "objc2", +] + +[[package]] +name = "objc2-encode" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef25abbcd74fb2609453eb695bd2f860d389e457f67dc17cafc8b8cbc89d0c33" + +[[package]] +name = "objc2-foundation" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272" +dependencies = [ + "bitflags 2.11.1", + "objc2", +] + +[[package]] +name = "objc2-io-kit" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33fafba39597d6dc1fb709123dfa8289d39406734be322956a69f0931c73bb15" +dependencies = [ + "libc", + "objc2-core-foundation", +] + +[[package]] +name = "objc2-open-directory" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb82bed227edf5201dfedf072bba4015a33d3d4a98519837295a90f0a23f676d" +dependencies = [ + "objc2", + "objc2-core-foundation", + "objc2-foundation", ] [[package]] @@ -5936,9 +6038,9 @@ dependencies = [ [[package]] name = "quick-xml" -version = "0.28.2" +version = "0.41.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce5e73202a820a31f8a0ee32ada5e21029c81fd9e3ebf668a40832e4219d9d1" +checksum = "e660451e55124f798a69a5af3f49ccfbefbd41910eefd25caf2393e1f3473ec1" dependencies = [ "memchr", "serde", @@ -6397,7 +6499,7 @@ dependencies = [ "oci-spec 0.8.4", "persist", "rand 0.10.1", - "rstest 0.18.2", + "rstest", "rtnetlink 0.21.0", "scopeguard", "serde", @@ -6492,18 +6594,6 @@ dependencies = [ "serde_derive", ] -[[package]] -name = "rstest" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97eeab2f3c0a199bc4be135c36c924b6590b88c377d416494288c14f2db30199" -dependencies = [ - "futures", - "futures-timer", - "rstest_macros 0.18.2", - "rustc_version", -] - [[package]] name = "rstest" version = "0.26.1" @@ -6512,24 +6602,7 @@ checksum = "f5a3193c063baaa2a95a33f03035c8a72b83d97a54916055ba22d35ed3839d49" dependencies = [ "futures-timer", "futures-util", - "rstest_macros 0.26.1", -] - -[[package]] -name = "rstest_macros" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d428f8247852f894ee1be110b375111b586d4fa431f6c46e64ba5a0dcccbe605" -dependencies = [ - "cfg-if 1.0.4", - "glob", - "proc-macro2", - "quote", - "regex", - "relative-path", - "rustc_version", - "syn 2.0.117", - "unicode-ident", + "rstest_macros", ] [[package]] @@ -7282,6 +7355,17 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "sha2" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "446ba717509524cb3f22f17ecc096f10f4822d76ab5c0b9822c5f9c284e825f4" +dependencies = [ + "cfg-if 1.0.4", + "cpufeatures 0.3.0", + "digest 0.11.3", +] + [[package]] name = "sharded-slab" version = "0.1.7" @@ -7310,7 +7394,7 @@ dependencies = [ "runtime-spec", "serial_test 0.10.0", "service", - "sha2 0.10.9", + "sha2 0.11.0", "slog", "slog-async", "slog-scope", @@ -7715,14 +7799,16 @@ dependencies = [ [[package]] name = "sysinfo" -version = "0.34.2" +version = "0.39.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4b93974b3d3aeaa036504b8eefd4c039dced109171c1ae973f1dc63b2c7e4b2" +checksum = "d2071df9448915b71c4fe6d25deaf1c22f12bd234f01540b77312bb8e41361e6" dependencies = [ "libc", "memchr", "ntapi", "objc2-core-foundation", + "objc2-io-kit", + "objc2-open-directory", "windows", ] @@ -9122,31 +9208,54 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windows" -version = "0.57.0" +version = "0.62.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143" +checksum = "527fadee13e0c05939a6a05d5bd6eec6cd2e3dbd648b9f8e447c6518133d8580" +dependencies = [ + "windows-collections", + "windows-core", + "windows-future", + "windows-numerics", +] + +[[package]] +name = "windows-collections" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23b2d95af1a8a14a3c7367e1ed4fc9c20e0a26e79551b1454d72583c97cc6610" dependencies = [ "windows-core", - "windows-targets 0.52.6", ] [[package]] name = "windows-core" -version = "0.57.0" +version = "0.62.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" dependencies = [ "windows-implement", "windows-interface", - "windows-result 0.1.2", - "windows-targets 0.52.6", + "windows-link", + "windows-result", + "windows-strings", +] + +[[package]] +name = "windows-future" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1d6f90251fe18a279739e78025bd6ddc52a7e22f921070ccdc67dde84c605cb" +dependencies = [ + "windows-core", + "windows-link", + "windows-threading", ] [[package]] name = "windows-implement" -version = "0.57.0" +version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", @@ -9155,9 +9264,9 @@ dependencies = [ [[package]] name = "windows-interface" -version = "0.57.0" +version = "0.59.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", @@ -9170,6 +9279,16 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" +[[package]] +name = "windows-numerics" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e2e40844ac143cdb44aead537bbf727de9b044e107a0f1220392177d15b0f26" +dependencies = [ + "windows-core", + "windows-link", +] + [[package]] name = "windows-registry" version = "0.6.1" @@ -9177,19 +9296,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "02752bf7fbdcce7f2a27a742f798510f3e5ad88dbe84871e5168e2120c3d5720" dependencies = [ "windows-link", - "windows-result 0.4.1", + "windows-result", "windows-strings", ] -[[package]] -name = "windows-result" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" -dependencies = [ - "windows-targets 0.52.6", -] - [[package]] name = "windows-result" version = "0.4.1" @@ -9301,6 +9411,15 @@ dependencies = [ "windows_x86_64_msvc 0.53.1", ] +[[package]] +name = "windows-threading" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3949bd5b99cafdf1c7ca86b43ca564028dfe27d66958f2470940f73d86d75b37" +dependencies = [ + "windows-link", +] + [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" diff --git a/Cargo.toml b/Cargo.toml index 8fbf549a86..15cd5e9d11 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,7 +2,7 @@ authors = ["The Kata Containers community "] edition = "2018" license = "Apache-2.0" -rust-version = "1.94" +rust-version = "1.95" [workspace] members = [ @@ -149,7 +149,8 @@ vsock-exporter = { path = "src/agent/vsock-exporter" } # Outside dependencies actix-rt = "2.7.0" -anyhow = "1.0" +anyhow = "1.0.103" +awaitgroup = "0.7.0" base64 = "0.22" async-recursion = "0.3.2" async-trait = "0.1.48" @@ -186,20 +187,21 @@ prometheus = { version = "0.14.0", features = ["process"] } protobuf = "3.7.2" rand = "0.10.1" regex = "1.10.5" -rstest = "0.18.0" +rstest = "0.26.1" rtnetlink = "0.14.0" scan_fmt = "0.2.6" scopeguard = "1.0.0" serde = { version = "1.0.145", features = ["derive"] } serde_json = "1.0.91" serial_test = "0.10.0" -sha2 = "0.10.9" +sha2 = "0.11.0" slog = "2.5.2" slog-scope = "4.4.0" slog-stdlog = "4.0.0" slog-term = "2.9.0" strum = { version = "0.24.0", features = ["derive"] } strum_macros = "0.26.2" +sysinfo = "0.39.5" tdx = "0.1.1" tempfile = "3.19.1" thiserror = "2.0.18" diff --git a/src/agent/Cargo.toml b/src/agent/Cargo.toml index b4c567607b..c4b4be5fd8 100644 --- a/src/agent/Cargo.toml +++ b/src/agent/Cargo.toml @@ -84,7 +84,7 @@ vsock-exporter.workspace = true # Initdata base64 = { workspace = true } -sha2 = "0.10.8" +sha2 = { workspace = true } async-compression = { version = "0.4.22", features = ["tokio", "gzip"] } container-device-interface = "0.1.1" diff --git a/src/agent/rustjail/Cargo.toml b/src/agent/rustjail/Cargo.toml index 6cfbbfdf0e..e6dece67a0 100644 --- a/src/agent/rustjail/Cargo.toml +++ b/src/agent/rustjail/Cargo.toml @@ -6,7 +6,7 @@ edition.workspace = true license.workspace = true [dependencies] -awaitgroup = "0.6.0" +awaitgroup = { workspace = true } serde.workspace = true serde_json.workspace = true diff --git a/src/libs/kata-types/Cargo.toml b/src/libs/kata-types/Cargo.toml index 242a669d47..6bf7bbfa6f 100644 --- a/src/libs/kata-types/Cargo.toml +++ b/src/libs/kata-types/Cargo.toml @@ -13,7 +13,7 @@ edition = "2018" [dependencies] bitmask-enum = "2.1.0" anyhow = "1.0" -base64 = "0.13.0" +base64 = { workspace = true } byte-unit = "5.2.3" glob = "0.3.0" lazy_static = "1.4.0" @@ -26,8 +26,8 @@ serde_json = "1.0.73" thiserror = { workspace = true } toml = { workspace = true } serde-enum-str = "0.5" -sysinfo = "0.34.2" -sha2 = "0.10.8" +sysinfo = { workspace = true } +sha2 = { workspace = true } flate2 = "1.1" nix = { workspace = true } oci-spec = { version = "0.8.1", features = ["runtime"] } @@ -44,7 +44,7 @@ sysctl = "0.7.1" tempfile = "3.19.1" test-utils = { path = "../test-utils" } nix = { workspace = true } -rstest = "0.18" +rstest = { workspace = true } [features] default = [] diff --git a/src/libs/kata-types/src/initdata.rs b/src/libs/kata-types/src/initdata.rs index 34cf33f34f..bad8001e14 100644 --- a/src/libs/kata-types/src/initdata.rs +++ b/src/libs/kata-types/src/initdata.rs @@ -5,6 +5,7 @@ use crate::sl; use anyhow::{anyhow, Context, Result}; +use base64::Engine as _; use flate2::read::GzDecoder; use serde::{Deserialize, Serialize}; use sha2::{Digest, Sha256, Sha384, Sha512}; @@ -202,7 +203,7 @@ pub fn calculate_initdata_digest( let digest_platform = adjust_digest(&digest, platform); // 4. Encode digest with base64/Standard - let b64encoded_digest = base64::encode_config(digest_platform, base64::STANDARD); + let b64encoded_digest = base64::engine::general_purpose::STANDARD.encode(digest_platform); Ok(b64encoded_digest) } @@ -216,8 +217,9 @@ pub fn encode_initdata(init_data: &InitData) -> String { /// Decodes a base64-encoded gzipped initdata document to its raw TOML representation. fn decode_raw_initdata(initdata_annotation: &str) -> Result { // Base64 decode the annotation value - let b64_decoded = - base64::decode_config(initdata_annotation, base64::STANDARD).context("base64 decode")?; + let b64_decoded = base64::engine::general_purpose::STANDARD + .decode(initdata_annotation) + .context("base64 decode")?; // Gzip decompress the decoded data let mut gz_decoder = GzDecoder::new(&b64_decoded[..]); @@ -256,7 +258,7 @@ fn create_encoded_input(content: &str) -> String { let mut encoder = flate2::write::GzEncoder::new(Vec::new(), flate2::Compression::default()); encoder.write_all(content.as_bytes()).unwrap(); let compressed = encoder.finish().unwrap(); - base64::encode_config(&compressed, base64::STANDARD) + base64::engine::general_purpose::STANDARD.encode(&compressed) } #[cfg(test)] @@ -344,7 +346,7 @@ url = 'http://kbs-service.xxx.cluster.local:8080' fn test_valid_base64_invalid_gzip() { // Test with valid base64 but invalid gzip content let not_gzipped = "This is not gzipped content"; - let encoded = base64::encode_config(not_gzipped.as_bytes(), base64::STANDARD); + let encoded = base64::engine::general_purpose::STANDARD.encode(not_gzipped.as_bytes()); let result = add_hypervisor_initdata_overrides(&encoded); assert!(result.is_err()); @@ -477,7 +479,7 @@ key = "value" .write_all(init_data.to_string().unwrap().as_bytes()) .unwrap(); let compressed = encoder.finish().unwrap(); - let b64_annotation = base64::encode(compressed); + let b64_annotation = base64::engine::general_purpose::STANDARD.encode(compressed); // Test processing let result = add_hypervisor_initdata_overrides(&b64_annotation).unwrap(); diff --git a/src/libs/kata-types/src/mount.rs b/src/libs/kata-types/src/mount.rs index 0805d83f38..fef6aa847c 100644 --- a/src/libs/kata-types/src/mount.rs +++ b/src/libs/kata-types/src/mount.rs @@ -5,6 +5,7 @@ // use anyhow::{anyhow, Context, Error, Result}; +use base64::Engine as _; use std::convert::TryFrom; use std::{collections::HashMap, path::PathBuf}; @@ -174,8 +175,9 @@ impl NydusExtraOptions { )); } let config_raw_data = options[0].trim_start_matches("extraoption="); - let extra_options_buf = - base64::decode(config_raw_data).context("decode the nydus's base64 extraoption")?; + let extra_options_buf = base64::engine::general_purpose::STANDARD + .decode(config_raw_data) + .context("decode the nydus's base64 extraoption")?; serde_json::from_slice(&extra_options_buf).context("deserialize nydus's extraoption") } @@ -421,12 +423,12 @@ impl KataVirtualVolume { /// Serializes the virtual volume object to a JSON string and encodes the string with base64. pub fn to_base64(&self) -> Result { let json = self.to_json()?; - Ok(base64::encode(json)) + Ok(base64::engine::general_purpose::STANDARD.encode(json)) } /// Decodes and deserializes a virtual volume object from a base64 encoded JSON string. pub fn from_base64(value: &str) -> Result { - let json = base64::decode(value)?; + let json = base64::engine::general_purpose::STANDARD.decode(value)?; let volume: KataVirtualVolume = serde_json::from_slice(&json)?; Ok(volume) @@ -512,7 +514,8 @@ pub fn join_path(prefix: &str, volume_path: &str) -> Result { if volume_path.is_empty() { return Err(anyhow!(std::io::ErrorKind::NotFound)); } - let b64_url_encoded_path = base64::encode_config(volume_path.as_bytes(), base64::URL_SAFE); + let b64_url_encoded_path = + base64::engine::general_purpose::URL_SAFE.encode(volume_path.as_bytes()); Ok(safe_path::scoped_join(prefix, b64_url_encoded_path)?) } diff --git a/src/runtime-rs/crates/runtimes/virt_container/Cargo.toml b/src/runtime-rs/crates/runtimes/virt_container/Cargo.toml index 78a26de56c..6bebabe47a 100644 --- a/src/runtime-rs/crates/runtimes/virt_container/Cargo.toml +++ b/src/runtime-rs/crates/runtimes/virt_container/Cargo.toml @@ -8,7 +8,7 @@ license = { workspace = true } [dependencies] anyhow = { workspace = true } async-trait = { workspace = true } -awaitgroup = "0.6.0" +awaitgroup = { workspace = true } containerd-shim-protos = { workspace = true } libc = { workspace = true } nix = { workspace = true } diff --git a/src/runtime-rs/crates/shim/src/shim.rs b/src/runtime-rs/crates/shim/src/shim.rs index 788c713383..1af578d497 100644 --- a/src/runtime-rs/crates/shim/src/shim.rs +++ b/src/runtime-rs/crates/shim/src/shim.rs @@ -72,9 +72,13 @@ impl ShimExecutor { // https://github.com/containerd/containerd/blob/v1.6.8/runtime/v2/shim/util_unix.go#L68 to // generate a shim socket path. Ok(PathBuf::from(format!( - "unix://{}/s/{:X}", + "unix://{}/s/{}", SOCKET_ROOT, - hasher.finalize() + hasher + .finalize() + .iter() + .map(|b| format!("{b:02X}")) + .collect::() ))) } } diff --git a/src/tools/kata-ctl/Cargo.toml b/src/tools/kata-ctl/Cargo.toml index b0cb50e4dd..16703d2fd9 100644 --- a/src/tools/kata-ctl/Cargo.toml +++ b/src/tools/kata-ctl/Cargo.toml @@ -54,11 +54,11 @@ lazy_static.workspace = true # for log-parser serde_yaml = "0.9" ron = "0.8" -quick-xml = { version = "0.28", features = ["serialize"] } +quick-xml = { version = "0.41.0", features = ["serialize"] } csv = "1.2" serde_with = "2.3" chrono = { version = "0.4", features = ["serde"] } -rstest = "0.26.1" +rstest = { workspace = true } [target.'cfg(target_arch = "s390x")'.dependencies] reqwest = { version = "0.12", default-features = false, features = [