1
0
Fork 0
mirror of https://github.com/containers/youki synced 2024-05-11 10:06:15 +02:00

Compare commits

...

20 Commits

Author SHA1 Message Date
Toru Komatsu 078c11e4cd
Merge 7abb4adc07 into cd9bfd8d79 2024-04-24 15:56:07 +05:30
dependabot[bot] cd9bfd8d79
Bump wasmtime and wasi-common from 19.0.2 to 20.0.0 (#2771)
* Bump wasi-common from 19.0.2 to 20.0.0

Bumps [wasi-common](https://github.com/bytecodealliance/wasmtime) from 19.0.2 to 20.0.0.
- [Release notes](https://github.com/bytecodealliance/wasmtime/releases)
- [Changelog](https://github.com/bytecodealliance/wasmtime/blob/main/docs/WASI-some-possible-changes.md)
- [Commits](https://github.com/bytecodealliance/wasmtime/compare/v19.0.2...v20.0.0)

---
updated-dependencies:
- dependency-name: wasi-common
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump wasmtime from 19.0.2 to 20.0.0

Bumps [wasmtime](https://github.com/bytecodealliance/wasmtime) from 19.0.2 to 20.0.0.
- [Release notes](https://github.com/bytecodealliance/wasmtime/releases)
- [Changelog](https://github.com/bytecodealliance/wasmtime/blob/main/docs/WASI-some-possible-changes.md)
- [Commits](https://github.com/bytecodealliance/wasmtime/compare/v19.0.2...v20.0.0)

---
updated-dependencies:
- dependency-name: wasmtime
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Yashodhan Joshi <yjdoc2@gmail.com>
2024-04-24 05:36:17 +00:00
github-actions[bot] 6422adc681
Merge pull request #2766 from containers/dependabot/cargo/rustls-0.21.11 2024-04-22 05:17:10 +00:00
Yashodhan f8ccba1eae
Merge pull request #2769 from containers/dependabot/cargo/serial_test-3.1.0
Bump serial_test from 3.0.0 to 3.1.0
2024-04-22 10:45:06 +05:30
github-actions[bot] 6139965e61
Merge pull request #2768 from containers/dependabot/cargo/patch-0895eb5417 2024-04-22 00:55:44 +00:00
dependabot[bot] 4046ed54e1
Bump serial_test from 3.0.0 to 3.1.0
Bumps [serial_test](https://github.com/palfrey/serial_test) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/palfrey/serial_test/releases)
- [Commits](https://github.com/palfrey/serial_test/compare/v3.0.0...v3.1.0)

---
updated-dependencies:
- dependency-name: serial_test
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-22 00:46:24 +00:00
dependabot[bot] 1d109fe115
Bump thiserror from 1.0.58 to 1.0.59 in the patch group
Bumps the patch group with 1 update: [thiserror](https://github.com/dtolnay/thiserror).


Updates `thiserror` from 1.0.58 to 1.0.59
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.58...1.0.59)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-22 00:45:31 +00:00
dependabot[bot] d64d9b3bcd
Bump rustls from 0.21.10 to 0.21.11
Bumps [rustls](https://github.com/rustls/rustls) from 0.21.10 to 0.21.11.
- [Release notes](https://github.com/rustls/rustls/releases)
- [Changelog](https://github.com/rustls/rustls/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rustls/rustls/compare/v/0.21.10...v/0.21.11)

---
updated-dependencies:
- dependency-name: rustls
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-19 19:50:27 +00:00
Toru Komatsu 32e021e1e9
seccomp: Use offset_of! (#2763)
* seccomp: Use offset_of!

Signed-off-by: utam0k <k0ma@utam0k.jp>

* Update experiment/seccomp/src/instruction/consts.rs

Co-authored-by: Yashodhan <54112038+YJDoc2@users.noreply.github.com>

---------

Signed-off-by: utam0k <k0ma@utam0k.jp>
Co-authored-by: Yashodhan <54112038+YJDoc2@users.noreply.github.com>
2024-04-18 18:01:14 +05:30
github-actions[bot] aa9ef54caa
Merge pull request #2765 from containers/dependabot/cargo/patch-35db3952d5 2024-04-18 04:33:45 +00:00
Yashodhan 79f08be664
reset console sockets to original in setup_console test (#2764)
This way the test logs and failed test stack does not get lost due
to setup console being set to different file.

Fixes #150

Signed-off-by: Yashodhan Joshi <yjdoc2@gmail.com>
2024-04-17 20:57:16 -07:00
dependabot[bot] 1a0cd33cdf
Bump the patch group with 2 updates
Bumps the patch group with 2 updates: [wasmtime](https://github.com/bytecodealliance/wasmtime) and [wasi-common](https://github.com/bytecodealliance/wasmtime).


Updates `wasmtime` from 19.0.1 to 19.0.2
- [Release notes](https://github.com/bytecodealliance/wasmtime/releases)
- [Changelog](https://github.com/bytecodealliance/wasmtime/blob/main/docs/WASI-some-possible-changes.md)
- [Commits](https://github.com/bytecodealliance/wasmtime/compare/v19.0.1...v19.0.2)

Updates `wasi-common` from 19.0.1 to 19.0.2
- [Release notes](https://github.com/bytecodealliance/wasmtime/releases)
- [Changelog](https://github.com/bytecodealliance/wasmtime/blob/main/docs/WASI-some-possible-changes.md)
- [Commits](https://github.com/bytecodealliance/wasmtime/compare/v19.0.1...v19.0.2)

---
updated-dependencies:
- dependency-name: wasmtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch
- dependency-name: wasi-common
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-18 00:20:23 +00:00
Yashodhan 342ad60927
update wasmtime dep to 19.0.1, replace wasmtime-wasi with wasi-cmmon (#2752)
Signed-off-by: Yashodhan Joshi <yjdoc2@gmail.com>
2024-04-17 12:53:10 +05:30
github-actions[bot] a103d8bc9a
Merge pull request #2762 from containers/dependabot/cargo/patch-302505f77b 2024-04-17 00:46:14 +00:00
dependabot[bot] 3ffbb416c5
Bump the patch group with 2 updates
Bumps the patch group with 2 updates: [serde](https://github.com/serde-rs/serde) and [serde_json](https://github.com/serde-rs/json).


Updates `serde` from 1.0.197 to 1.0.198
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.197...v1.0.198)

Updates `serde_json` from 1.0.115 to 1.0.116
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.115...v1.0.116)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-17 00:31:44 +00:00
github-actions[bot] 61b4ab2de5
Merge pull request #2761 from containers/dependabot/cargo/patch-d71ae0c931 2024-04-16 01:10:42 +00:00
dependabot[bot] 0bc7a72402
Bump chrono from 0.4.37 to 0.4.38 in the patch group
Bumps the patch group with 1 update: [chrono](https://github.com/chronotope/chrono).


Updates `chrono` from 0.4.37 to 0.4.38
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.37...v0.4.38)

---
updated-dependencies:
- dependency-name: chrono
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-16 01:00:12 +00:00
github-actions[bot] ae12a5cca7
Merge pull request #2760 from containers/dependabot/cargo/patch-3af49d0eb8 2024-04-15 01:11:39 +00:00
dependabot[bot] e24123050b
Bump fixedbitset from 0.5.6 to 0.5.7 in the patch group
Bumps the patch group with 1 update: [fixedbitset](https://github.com/petgraph/fixedbitset).


Updates `fixedbitset` from 0.5.6 to 0.5.7
- [Release notes](https://github.com/petgraph/fixedbitset/releases)
- [Commits](https://github.com/petgraph/fixedbitset/compare/v0.5.6...v0.5.7)

---
updated-dependencies:
- dependency-name: fixedbitset
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-15 01:01:23 +00:00
utam0k 7abb4adc07
WIP
Signed-off-by: utam0k <k0ma@utam0k.jp>
2024-02-28 22:07:39 +09:00
10 changed files with 272 additions and 267 deletions

View File

@ -0,0 +1,10 @@
name: Setup
runs:
using: composite
steps:
- name: Install just
uses: taiki-e/install-action@just
- name: Install requirements
shell: bash
run: sudo env PATH=$PATH just ci-prepare

View File

@ -100,9 +100,8 @@ jobs:
uses: taiki-e/install-action@v1
with:
tool: cargo-llvm-cov@0.4.0
- uses: taiki-e/install-action@just
- name: Install requirements
run: sudo env PATH=$PATH just ci-prepare
- name: Setup
uses: ./.github/workflows/actions/setup
- name: Run Test Coverage for youki
run: |
cargo llvm-cov clean --workspace

434
Cargo.lock generated
View File

@ -185,7 +185,7 @@ dependencies = [
"cfg-if",
"libc",
"miniz_oxide",
"object",
"object 0.32.2",
"rustc-demangle",
]
@ -219,7 +219,7 @@ dependencies = [
"bitflags 2.5.0",
"cexpr",
"clang-sys",
"itertools 0.12.1",
"itertools",
"lazy_static",
"lazycell",
"proc-macro2",
@ -308,9 +308,9 @@ dependencies = [
[[package]]
name = "cap-fs-ext"
version = "2.0.1"
version = "3.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "88e341d15ac1029aadce600be764a1a1edafe40e03cde23285bc1d261b3a4866"
checksum = "769f8cd02eb04d57f14e2e371ebb533f96817f9b2525d73a5c72b61ca7973747"
dependencies = [
"cap-primitives",
"cap-std",
@ -318,23 +318,11 @@ dependencies = [
"windows-sys 0.52.0",
]
[[package]]
name = "cap-net-ext"
version = "2.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "434168fe6533055f0f4204039abe3ff6d7db338ef46872a5fa39e9d5ad5ab7a9"
dependencies = [
"cap-primitives",
"cap-std",
"rustix",
"smallvec",
]
[[package]]
name = "cap-primitives"
version = "2.0.1"
version = "3.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fe16767ed8eee6d3f1f00d6a7576b81c226ab917eb54b96e5f77a5216ef67abb"
checksum = "90a0b44fc796b1a84535a63753d50ba3972c4db55c7255c186f79140e63d56d0"
dependencies = [
"ambient-authority",
"fs-set-times",
@ -349,9 +337,9 @@ dependencies = [
[[package]]
name = "cap-rand"
version = "2.0.1"
version = "3.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "20e5695565f0cd7106bc3c7170323597540e772bb73e0be2cd2c662a0f8fa4ca"
checksum = "4327f08daac33a99bb03c54ae18c8f32c3ba31c728a33ddf683c6c6a5043de68"
dependencies = [
"ambient-authority",
"rand",
@ -359,9 +347,9 @@ dependencies = [
[[package]]
name = "cap-std"
version = "2.0.1"
version = "3.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "593db20e4c51f62d3284bae7ee718849c3214f93a3b94ea1899ad85ba119d330"
checksum = "266626ce180cf9709f317d0bf9754e3a5006359d87f4bf792f06c9c5f1b63c0f"
dependencies = [
"cap-primitives",
"io-extras",
@ -371,9 +359,9 @@ dependencies = [
[[package]]
name = "cap-time-ext"
version = "2.0.1"
version = "3.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "03261630f291f425430a36f38c847828265bc928f517cdd2004c56f4b02f002b"
checksum = "e1353421ba83c19da60726e35db0a89abef984b3be183ff6f58c5b8084fcd0c5"
dependencies = [
"ambient-authority",
"cap-primitives",
@ -426,9 +414,9 @@ checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
[[package]]
name = "chrono"
version = "0.4.37"
version = "0.4.38"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e"
checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
dependencies = [
"android-tzdata",
"iana-time-zone",
@ -595,9 +583,9 @@ dependencies = [
[[package]]
name = "cpp_demangle"
version = "0.3.5"
version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eeaa953eaad386a53111e47172c2fedba671e5684c8dd601a5f474f4f118710f"
checksum = "7e8227005286ec39567949b33df9896bcadfa6051bccca2488129f108ca23119"
dependencies = [
"cfg-if",
]
@ -622,11 +610,11 @@ dependencies = [
[[package]]
name = "cranelift-bforest"
version = "0.105.3"
version = "0.107.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "16d5521e2abca66bbb1ddeecbb6f6965c79160352ae1579b39f8c86183895c24"
checksum = "79b27922a6879b5b5361d0a084cb0b1941bf109a98540addcb932da13b68bed4"
dependencies = [
"cranelift-entity 0.105.3",
"cranelift-entity 0.107.0",
]
[[package]]
@ -652,17 +640,17 @@ dependencies = [
[[package]]
name = "cranelift-codegen"
version = "0.105.3"
version = "0.107.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ef40a4338a47506e832ac3e53f7f1375bc59351f049a8379ff736dd02565bd95"
checksum = "304c455b28bf56372729acb356afbb55d622f2b0f2f7837aa5e57c138acaac4d"
dependencies = [
"bumpalo",
"cranelift-bforest 0.105.3",
"cranelift-codegen-meta 0.105.3",
"cranelift-codegen-shared 0.105.3",
"cranelift-bforest 0.107.0",
"cranelift-codegen-meta 0.107.0",
"cranelift-codegen-shared 0.107.0",
"cranelift-control",
"cranelift-entity 0.105.3",
"cranelift-isle 0.105.3",
"cranelift-entity 0.107.0",
"cranelift-isle 0.107.0",
"gimli 0.28.1",
"hashbrown 0.14.3",
"log",
@ -682,11 +670,11 @@ dependencies = [
[[package]]
name = "cranelift-codegen-meta"
version = "0.105.3"
version = "0.107.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d24cd5d85985c070f73dfca07521d09086362d1590105ba44b0932bf33513b61"
checksum = "1653c56b99591d07f67c5ca7f9f25888948af3f4b97186bff838d687d666f613"
dependencies = [
"cranelift-codegen-shared 0.105.3",
"cranelift-codegen-shared 0.107.0",
]
[[package]]
@ -697,15 +685,15 @@ checksum = "278e52e29c53fcf32431ef08406c295699a70306d05a0715c5b1bf50e33a9ab7"
[[package]]
name = "cranelift-codegen-shared"
version = "0.105.3"
version = "0.107.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e0584c4363e3aa0a3c7cb98a778fbd5326a3709f117849a727da081d4051726c"
checksum = "f5b6a9cf6b6eb820ee3f973a0db313c05dc12d370f37b4fe9630286e1672573f"
[[package]]
name = "cranelift-control"
version = "0.105.3"
version = "0.107.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f25ecede098c6553fdba362a8e4c9ecb8d40138363bff47f9712db75be7f0571"
checksum = "d9d06e6bf30075fb6bed9e034ec046475093392eea1aff90eb5c44c4a033d19a"
dependencies = [
"arbitrary",
]
@ -732,9 +720,9 @@ checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c"
[[package]]
name = "cranelift-entity"
version = "0.105.3"
version = "0.107.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ea081a42f25dc4c5b248b87efdd87dcd3842a1050a37524ec5391e6172058cb"
checksum = "29be04f931b73cdb9694874a295027471817f26f26d2f0ebe5454153176b6e3a"
dependencies = [
"serde",
"serde_derive",
@ -754,11 +742,11 @@ dependencies = [
[[package]]
name = "cranelift-frontend"
version = "0.105.3"
version = "0.107.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9796e712f5af797e247784f7518e6b0a83a8907d73d51526982d86ecb3a58b68"
checksum = "a07fd7393041d7faa2f37426f5dc7fc04003b70988810e8c063beefeff1cd8f9"
dependencies = [
"cranelift-codegen 0.105.3",
"cranelift-codegen 0.107.0",
"log",
"smallvec",
"target-lexicon",
@ -772,34 +760,34 @@ checksum = "393bc73c451830ff8dbb3a07f61843d6cb41a084f9996319917c0b291ed785bb"
[[package]]
name = "cranelift-isle"
version = "0.105.3"
version = "0.107.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f4a66ccad5782f15c80e9dd5af0df4acfe6e3eee98e8f7354a2e5c8ec3104bdd"
checksum = "f341d7938caa6dff8149dac05bb2b53fc680323826b83b4cf175ab9f5139a3c9"
[[package]]
name = "cranelift-native"
version = "0.105.3"
version = "0.107.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "285e80df1d9b79ded9775b285df68b920a277b84f88a7228d2f5bc31fcdc58eb"
checksum = "82af6066e6448d26eeabb7aa26a43f7ff79f8217b06bade4ee6ef230aecc8880"
dependencies = [
"cranelift-codegen 0.105.3",
"cranelift-codegen 0.107.0",
"libc",
"target-lexicon",
]
[[package]]
name = "cranelift-wasm"
version = "0.105.3"
version = "0.107.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4135b0ab01fd16aa8f8821196e9e2fe15953552ccaef8ba5153be0ced04ef757"
checksum = "2766fab7284a914a7f17f90ebe865c86453225fb8637ac31f123f5028fee69cd"
dependencies = [
"cranelift-codegen 0.105.3",
"cranelift-entity 0.105.3",
"cranelift-frontend 0.105.3",
"itertools 0.10.5",
"cranelift-codegen 0.107.0",
"cranelift-entity 0.107.0",
"cranelift-frontend 0.107.0",
"itertools",
"log",
"smallvec",
"wasmparser 0.121.2",
"wasmparser 0.202.0",
"wasmtime-types",
]
@ -1275,9 +1263,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
[[package]]
name = "fixedbitset"
version = "0.5.6"
version = "0.5.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1a73ce1c73b7c2bae1da2d2881eadd020bafb406731036ad248e8a7c2df392c"
checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99"
[[package]]
name = "flate2"
@ -1828,15 +1816,6 @@ dependencies = [
"serde",
]
[[package]]
name = "itertools"
version = "0.10.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
dependencies = [
"either",
]
[[package]]
name = "itertools"
version = "0.12.1"
@ -1943,7 +1922,7 @@ dependencies = [
"clap",
"env_logger 0.11.3",
"errno",
"fixedbitset 0.5.6",
"fixedbitset 0.5.7",
"libbpf-sys",
"libc",
"mockall",
@ -2372,6 +2351,15 @@ name = "object"
version = "0.32.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
dependencies = [
"memchr",
]
[[package]]
name = "object"
version = "0.33.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d8dd6c0cdf9429bce006e1362bfce61fa1bfd8c898a643ed8d2b471934701d3d"
dependencies = [
"crc32fast",
"hashbrown 0.14.3",
@ -3199,9 +3187,9 @@ dependencies = [
[[package]]
name = "rustls"
version = "0.21.10"
version = "0.21.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
checksum = "7fecbfb7b1444f477b345853b1fce097a2c6fb637b2bfb87e6bc5db0f043fae4"
dependencies = [
"log",
"ring",
@ -3258,6 +3246,15 @@ dependencies = [
"winapi-util",
]
[[package]]
name = "scc"
version = "2.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec96560eea317a9cc4e0bb1f6a2c93c09a19b8c4fc5cb3fcc0ec1c094cd783e2"
dependencies = [
"sdd",
]
[[package]]
name = "schannel"
version = "0.1.23"
@ -3289,6 +3286,12 @@ dependencies = [
"untrusted",
]
[[package]]
name = "sdd"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b84345e4c9bd703274a082fb80caaa99b7612be48dfaa1dd9266577ec412309d"
[[package]]
name = "seahash"
version = "4.1.0"
@ -3344,9 +3347,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
[[package]]
name = "serde"
version = "1.0.197"
version = "1.0.198"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
checksum = "9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc"
dependencies = [
"serde_derive",
]
@ -3374,9 +3377,9 @@ dependencies = [
[[package]]
name = "serde_derive"
version = "1.0.197"
version = "1.0.198"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
checksum = "e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9"
dependencies = [
"proc-macro2",
"quote",
@ -3385,9 +3388,9 @@ dependencies = [
[[package]]
name = "serde_json"
version = "1.0.115"
version = "1.0.116"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
dependencies = [
"itoa",
"ryu",
@ -3442,23 +3445,23 @@ dependencies = [
[[package]]
name = "serial_test"
version = "3.0.0"
version = "3.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "953ad9342b3aaca7cb43c45c097dd008d4907070394bd0751a0aa8817e5a018d"
checksum = "adb86f9315df5df6a70eae0cc22395a44e544a0d8897586820770a35ede74449"
dependencies = [
"dashmap",
"futures",
"lazy_static",
"log",
"once_cell",
"parking_lot",
"scc",
"serial_test_derive",
]
[[package]]
name = "serial_test_derive"
version = "3.0.0"
version = "3.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b93fb4adc70021ac1b47f7d45e8cc4169baaa7ea58483bc5b721d19a26202212"
checksum = "a9bb72430492e9549b0c4596725c0f82729bff861c45aa8099c0a8e67fc3b721"
dependencies = [
"proc-macro2",
"quote",
@ -3741,9 +3744,9 @@ dependencies = [
[[package]]
name = "system-interface"
version = "0.26.1"
version = "0.27.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0682e006dd35771e392a6623ac180999a9a854b1d4a6c12fb2e804941c2b1f58"
checksum = "b858526d22750088a9b3cf2e3c2aacebd5377f13adeec02860c30d09113010a6"
dependencies = [
"bitflags 2.5.0",
"cap-fs-ext",
@ -3834,18 +3837,18 @@ dependencies = [
[[package]]
name = "thiserror"
version = "1.0.58"
version = "1.0.59"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
version = "1.0.58"
version = "1.0.59"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
dependencies = [
"proc-macro2",
"quote",
@ -4011,15 +4014,6 @@ dependencies = [
"tracing",
]
[[package]]
name = "toml"
version = "0.5.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
dependencies = [
"serde",
]
[[package]]
name = "toml"
version = "0.7.8"
@ -4480,9 +4474,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
[[package]]
name = "wasi-common"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "95e022c29ad56af4cc0a8a8f0e0191abf9e0a0c4a68d25dfe088c39c9a8e3d2c"
checksum = "63255d85e10627b07325d7cf4e5fe5a40fa4ff183569a0a67931be26d50ede07"
dependencies = [
"anyhow",
"bitflags 2.5.0",
@ -4593,15 +4587,6 @@ version = "0.2.84"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
[[package]]
name = "wasm-encoder"
version = "0.41.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "972f97a5d8318f908dded23594188a90bcd09365986b1163e66d70170e5287ae"
dependencies = [
"leb128",
]
[[package]]
name = "wasm-encoder"
version = "0.202.0"
@ -4914,9 +4899,9 @@ dependencies = [
[[package]]
name = "wasmparser"
version = "0.121.2"
version = "0.202.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9dbe55c8f9d0dbd25d9447a5a889ff90c0cc3feaa7395310d3d826b2c703eaab"
checksum = "d6998515d3cf3f8b980ef7c11b29a9b1017d4cf86b99ae93b546992df9931413"
dependencies = [
"bitflags 2.5.0",
"indexmap 2.2.6",
@ -4925,19 +4910,19 @@ dependencies = [
[[package]]
name = "wasmprinter"
version = "0.2.80"
version = "0.202.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "60e73986a6b7fdfedb7c5bf9e7eb71135486507c8fbc4c0c42cffcb6532988b7"
checksum = "ab1cc9508685eef9502e787f4d4123745f5651a1e29aec047645d3cac1e2da7a"
dependencies = [
"anyhow",
"wasmparser 0.121.2",
"wasmparser 0.202.0",
]
[[package]]
name = "wasmtime"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8106d7d22d63d1bcb940e22dcc7b03e46f0fc8bfbaf2fd7b6cb8f448f9449774"
checksum = "5a5990663c28d81015ddbb02a068ac1bf396a4ea296eba7125b2dfc7c00cb52e"
dependencies = [
"addr2line",
"anyhow",
@ -4952,17 +4937,18 @@ dependencies = [
"ittapi",
"libc",
"log",
"object",
"object 0.33.0",
"once_cell",
"paste",
"rayon",
"rustix",
"semver 1.0.22",
"serde",
"serde_derive",
"serde_json",
"target-lexicon",
"wasm-encoder 0.41.2",
"wasmparser 0.121.2",
"wasm-encoder",
"wasmparser 0.202.0",
"wasmtime-cache",
"wasmtime-component-macro",
"wasmtime-component-util",
@ -4972,6 +4958,7 @@ dependencies = [
"wasmtime-jit-debug",
"wasmtime-jit-icache-coherence",
"wasmtime-runtime",
"wasmtime-slab",
"wasmtime-winch",
"wat",
"windows-sys 0.52.0",
@ -4979,18 +4966,18 @@ dependencies = [
[[package]]
name = "wasmtime-asm-macros"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b0cf02cea951ace34ee3b0e64b7f446c3519d1c95ad75bc5330f405e275ee8f"
checksum = "625ee94c72004f3ea0228989c9506596e469517d7d0ed66f7300d1067bdf1ca9"
dependencies = [
"cfg-if",
]
[[package]]
name = "wasmtime-cache"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3249204a71d728d53fb3eea18afd0473f87e520445707a4d567ac4da0bb3eb5d"
checksum = "98534bf28de232299e83eab33984a7a6c40c69534d6bd0ea216150b63d41a83a"
dependencies = [
"anyhow",
"base64",
@ -5001,16 +4988,16 @@ dependencies = [
"serde",
"serde_derive",
"sha2",
"toml 0.5.11",
"toml 0.8.12",
"windows-sys 0.52.0",
"zstd",
]
[[package]]
name = "wasmtime-component-macro"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7d3786c0531565ec6c9852c0e46299f06cb6e4b58d36e30f3c234cfa69bde376"
checksum = "64f84414a25ee3a624c8b77550f3fe7b5d8145bd3405ca58886ee6900abb6dc2"
dependencies = [
"anyhow",
"proc-macro2",
@ -5023,72 +5010,55 @@ dependencies = [
[[package]]
name = "wasmtime-component-util"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "81eae2ec98027ee0b3950da83bc320120a23087ac4d39b3d59201cb5ebf52777"
checksum = "78580bdb4e04c7da3bf98088559ca1d29382668536e4d5c7f2f966d79c390307"
[[package]]
name = "wasmtime-cranelift"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "595abdb067acdc812ab0f21d8d46d5aa4022392aa7c3e0632c20bff9ec49ffb4"
checksum = "b60df0ee08c6a536c765f69e9e8205273435b66d02dd401e938769a2622a6c1a"
dependencies = [
"anyhow",
"cfg-if",
"cranelift-codegen 0.105.3",
"cranelift-codegen 0.107.0",
"cranelift-control",
"cranelift-entity 0.105.3",
"cranelift-frontend 0.105.3",
"cranelift-entity 0.107.0",
"cranelift-frontend 0.107.0",
"cranelift-native",
"cranelift-wasm",
"gimli 0.28.1",
"log",
"object",
"object 0.33.0",
"target-lexicon",
"thiserror",
"wasmparser 0.121.2",
"wasmtime-cranelift-shared",
"wasmparser 0.202.0",
"wasmtime-environ",
"wasmtime-versioned-export-macros",
]
[[package]]
name = "wasmtime-cranelift-shared"
version = "18.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e8c24c1fdea167b992d82ebe76471fd1cbe7b0b406bc72f9250f86353000134e"
dependencies = [
"anyhow",
"cranelift-codegen 0.105.3",
"cranelift-control",
"cranelift-native",
"gimli 0.28.1",
"object",
"target-lexicon",
"wasmtime-environ",
]
[[package]]
name = "wasmtime-environ"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3279d510005358141550d8a90a5fc989d7e81748e5759d582fe6bfdcbf074a04"
checksum = "64ffc1613db69ee47c96738861534f9a405e422a5aa00224fbf5d410b03fb445"
dependencies = [
"anyhow",
"bincode",
"cpp_demangle",
"cranelift-entity 0.105.3",
"cranelift-entity 0.107.0",
"gimli 0.28.1",
"indexmap 2.2.6",
"log",
"object",
"object 0.33.0",
"rustc-demangle",
"serde",
"serde_derive",
"target-lexicon",
"thiserror",
"wasm-encoder 0.41.2",
"wasmparser 0.121.2",
"wasm-encoder",
"wasmparser 0.202.0",
"wasmprinter",
"wasmtime-component-util",
"wasmtime-types",
@ -5096,9 +5066,9 @@ dependencies = [
[[package]]
name = "wasmtime-fiber"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b1df665f2117741d1265f5663b0d93068b18120c2c4b18b9faed49d00d92c31"
checksum = "f043514a23792761c5765f8ba61a4aa7d67f260c0c37494caabceb41d8ae81de"
dependencies = [
"anyhow",
"cc",
@ -5111,11 +5081,11 @@ dependencies = [
[[package]]
name = "wasmtime-jit-debug"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "63f307739370736e5b0cd2b45910ff96bcda6d5d68b2c4384bcedb0af4f3b321"
checksum = "9c0ca2ad8f5d2b37f507ef1c935687a690e84e9f325f5a2af9639440b43c1f0e"
dependencies = [
"object",
"object 0.33.0",
"once_cell",
"rustix",
"wasmtime-versioned-export-macros",
@ -5123,9 +5093,9 @@ dependencies = [
[[package]]
name = "wasmtime-jit-icache-coherence"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "866634605089b4632b32226b54aa3670d72e1849f9fc425c7e50b3749c2e6df3"
checksum = "7a9f93a3289057b26dc75eb84d6e60d7694f7d169c7c09597495de6e016a13ff"
dependencies = [
"cfg-if",
"libc",
@ -5134,9 +5104,9 @@ dependencies = [
[[package]]
name = "wasmtime-runtime"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e11185c88cadf595d228f5ae4ff9b4badbf9ca98dcb37b0310c36e31fa74867f"
checksum = "c6332a2b0af4224c3ea57c857ad39acd2780ccc2b0c99ba1baa01864d90d7c94"
dependencies = [
"anyhow",
"cc",
@ -5145,102 +5115,75 @@ dependencies = [
"indexmap 2.2.6",
"libc",
"log",
"mach",
"mach2",
"memfd",
"memoffset 0.9.1",
"paste",
"psm",
"rustix",
"sptr",
"wasm-encoder 0.41.2",
"wasm-encoder",
"wasmtime-asm-macros",
"wasmtime-environ",
"wasmtime-fiber",
"wasmtime-jit-debug",
"wasmtime-slab",
"wasmtime-versioned-export-macros",
"wasmtime-wmemcheck",
"windows-sys 0.52.0",
]
[[package]]
name = "wasmtime-types"
version = "18.0.3"
name = "wasmtime-slab"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f32377cbd827bee06fcb2f6bf97b0477fdcc86888bbe6db7b9cab8e644082e0a"
checksum = "8b3655075824a374c536a2b2cc9283bb765fcdf3d58b58587862c48571ad81ef"
[[package]]
name = "wasmtime-types"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b98cf64a242b0b9257604181ca28b28a5fcaa4c9ea1d396f76d1d2d1c5b40eef"
dependencies = [
"cranelift-entity 0.105.3",
"cranelift-entity 0.107.0",
"serde",
"serde_derive",
"thiserror",
"wasmparser 0.121.2",
"wasmparser 0.202.0",
]
[[package]]
name = "wasmtime-versioned-export-macros"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4ab8d7566d206c42f8cf1d4ac90c5e40d3582e8eabad9b3b67e9e73c61fc47a1"
checksum = "8561d9e2920db2a175213d557d71c2ac7695831ab472bbfafb9060cd1034684f"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.58",
]
[[package]]
name = "wasmtime-wasi"
version = "18.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9ca912bda309188bd25ab7652c6654b34aacdf43047c716ee1cb685a28079078"
dependencies = [
"anyhow",
"async-trait",
"bitflags 2.5.0",
"bytes",
"cap-fs-ext",
"cap-net-ext",
"cap-rand",
"cap-std",
"cap-time-ext",
"fs-set-times",
"futures",
"io-extras",
"io-lifetimes",
"log",
"once_cell",
"rustix",
"system-interface",
"thiserror",
"tokio",
"tracing",
"url",
"wasi-common",
"wasmtime",
"wiggle",
"windows-sys 0.52.0",
]
[[package]]
name = "wasmtime-winch"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ba5a97bfccc241d1769cef75eb16f472a893982704d5f3c9c71c431c1484344a"
checksum = "a06b573d14ac846a0fb8c541d8fca6a64acf9a1d176176982472274ab1d2fa5d"
dependencies = [
"anyhow",
"cranelift-codegen 0.105.3",
"cranelift-codegen 0.107.0",
"gimli 0.28.1",
"object",
"object 0.33.0",
"target-lexicon",
"wasmparser 0.121.2",
"wasmtime-cranelift-shared",
"wasmparser 0.202.0",
"wasmtime-cranelift",
"wasmtime-environ",
"winch-codegen",
]
[[package]]
name = "wasmtime-wit-bindgen"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "faf2c76781a27e07802669f6f0e11eb4441546407eb65be60c3d862200988b92"
checksum = "595bc7bb3b0ff4aa00fab718c323ea552c3034d77abc821a35112552f2ea487a"
dependencies = [
"anyhow",
"heck 0.4.1",
@ -5248,12 +5191,6 @@ dependencies = [
"wit-parser",
]
[[package]]
name = "wasmtime-wmemcheck"
version = "18.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3847d969bd203b8cd239f89581e52432a0f00b8c5c9bc917be2fccd7542c4f2f"
[[package]]
name = "wast"
version = "35.0.2"
@ -5273,7 +5210,7 @@ dependencies = [
"leb128",
"memchr",
"unicode-width",
"wasm-encoder 0.202.0",
"wasm-encoder",
]
[[package]]
@ -5365,9 +5302,9 @@ dependencies = [
[[package]]
name = "wiggle"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a7ecd6e1ffba1278cfd24a001a13da11d86801e0ad9342f11a370ce0df50e14"
checksum = "1b6552dda951239e219c329e5a768393664e8d120c5e0818487ac2633f173b1f"
dependencies = [
"anyhow",
"async-trait",
@ -5380,9 +5317,9 @@ dependencies = [
[[package]]
name = "wiggle-generate"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c5490497a35d67040d4f2fd2491fbcad6dd225c5bd24681c2cd52a2f40a55ce"
checksum = "da64cb31e0bfe8b1d2d13956ef9fd5c77545756a1a6ef0e6cfd44e8f1f207aed"
dependencies = [
"anyhow",
"heck 0.4.1",
@ -5395,9 +5332,9 @@ dependencies = [
[[package]]
name = "wiggle-macro"
version = "18.0.3"
version = "20.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d83f31d1c1a0d87842f1a2bf40bd230e25ba790c450f0d0ddb84524fd6955958"
checksum = "900b2416ef2ff2903ded6cf55d4a941fed601bf56a8c4874856d7a77c1891994"
dependencies = [
"proc-macro2",
"quote",
@ -5438,17 +5375,18 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
[[package]]
name = "winch-codegen"
version = "0.16.3"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e0bd4d6cac8d69525d475d0ce1e0801eb6f314d42e764a52bd497ed3cb9c371"
checksum = "fb23450977f9d4a23c02439cf6899340b2d68887b19465c5682740d9cc37d52e"
dependencies = [
"anyhow",
"cranelift-codegen 0.105.3",
"cranelift-codegen 0.107.0",
"gimli 0.28.1",
"regalloc2 0.9.3",
"smallvec",
"target-lexicon",
"wasmparser 0.121.2",
"wasmparser 0.202.0",
"wasmtime-cranelift",
"wasmtime-environ",
]
@ -5682,9 +5620,9 @@ dependencies = [
[[package]]
name = "wit-parser"
version = "0.13.2"
version = "0.202.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "316b36a9f0005f5aa4b03c39bc3728d045df136f8c13a73b7db4510dec725e08"
checksum = "744237b488352f4f27bca05a10acb79474415951c450e52ebd0da784c1df2bcc"
dependencies = [
"anyhow",
"id-arena",
@ -5695,6 +5633,7 @@ dependencies = [
"serde_derive",
"serde_json",
"unicode-xid",
"wasmparser 0.202.0",
]
[[package]]
@ -5764,11 +5703,11 @@ dependencies = [
"tracing-journald",
"tracing-subscriber",
"vergen",
"wasi-common",
"wasmedge-sdk",
"wasmer",
"wasmer-wasix",
"wasmtime",
"wasmtime-wasi",
]
[[package]]
@ -5793,20 +5732,19 @@ dependencies = [
[[package]]
name = "zstd"
version = "0.11.2+zstd.1.5.2"
version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4"
checksum = "2d789b1514203a1120ad2429eae43a7bd32b90976a7bb8a05f7ec02fa88cc23a"
dependencies = [
"zstd-safe",
]
[[package]]
name = "zstd-safe"
version = "5.0.2+zstd.1.5.2"
version = "7.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db"
checksum = "1cd99b45c6bc03a018c8b8a86025678c87e55526064e38f9df301989dce7ec0a"
dependencies = [
"libc",
"zstd-sys",
]

View File

@ -23,13 +23,13 @@ cgroupsv2_devices = ["rbpf", "libbpf-sys", "errno", "libc", "nix/dir"]
nix = { version = "0.27.1", features = ["signal", "user", "fs"] }
procfs = "0.16.0"
oci-spec = { version = "~0.6.4", features = ["runtime"] }
fixedbitset = "0.5.6"
fixedbitset = "0.5.7"
serde = { version = "1.0", features = ["derive"] }
rbpf = { version = "0.2.0", optional = true }
libbpf-sys = { version = "1.4.0", optional = true }
errno = { version = "0.3.8", optional = true }
libc = { version = "0.2.153", optional = true }
thiserror = "1.0.58"
thiserror = "1.0.59"
tracing = { version = "0.1.40", features = ["attributes"] }
[dev-dependencies]
@ -41,5 +41,5 @@ clap = "4.1.6"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
env_logger = "0.11"
serial_test = "3.0.0"
serial_test = "3.1.0"
tempfile = "3"

View File

@ -50,7 +50,7 @@ serde_json = "1.0"
rust-criu = "0.4.0"
protobuf = "= 3.2.0" # https://github.com/checkpoint-restore/rust-criu/issues/19
regex = "1.10.4"
thiserror = "1.0.58"
thiserror = "1.0.59"
tracing = { version = "0.1.40", features = ["attributes"] }
safe-path = "0.1.0"
nc = "0.8.20"
@ -58,7 +58,7 @@ nc = "0.8.20"
[dev-dependencies]
oci-spec = { version = "~0.6.4", features = ["proptests", "runtime"] }
quickcheck = "1"
serial_test = "3.0.0"
serial_test = "3.1.0"
tempfile = "3"
anyhow = "1.0"
rand = { version = "0.8.5" }

View File

@ -224,12 +224,25 @@ mod tests {
#[serial]
fn test_setup_console() {
let init = setup();
// duplicate the existing std* fds
// we need to restore them later, and we cannot simply store them
// as they themselves get modified in setup_console
let old_stdin: RawFd = nix::unistd::dup(StdIO::Stdin.into()).unwrap();
let old_stdout: RawFd = nix::unistd::dup(StdIO::Stdout.into()).unwrap();
let old_stderr: RawFd = nix::unistd::dup(StdIO::Stderr.into()).unwrap();
assert!(init.is_ok());
let (testdir, rundir_path, socket_path) = init.unwrap();
let lis = UnixListener::bind(Path::join(testdir.path(), "console-socket"));
assert!(lis.is_ok());
let fd = setup_console_socket(&rundir_path, &socket_path, CONSOLE_SOCKET);
let status = setup_console(&fd.unwrap());
// restore the original std* before doing final assert
dup2(old_stdin, StdIO::Stdin.into()).unwrap();
dup2(old_stdout, StdIO::Stdout.into()).unwrap();
dup2(old_stderr, StdIO::Stderr.into()).unwrap();
assert!(status.is_ok());
}
}

View File

@ -19,7 +19,7 @@ cgroupsv2_devices = ["libcgroups/cgroupsv2_devices", "libcontainer/cgroupsv2_dev
wasm-wasmer = ["wasmer", "wasmer-wasix"]
wasm-wasmedge = ["wasmedge-sdk/standalone", "wasmedge-sdk/static"]
wasm-wasmtime = ["wasmtime", "wasmtime-wasi"]
wasm-wasmtime = ["wasmtime", "wasi-common"]
[dependencies.clap]
version = "4.1.6"
@ -44,14 +44,14 @@ caps = "0.5.5"
wasmer = { version = "4.0.0", optional = true }
wasmer-wasix = { version = "0.9.0", optional = true }
wasmedge-sdk = { version = "0.13.2", optional = true }
wasmtime = { version = "18.0.3", optional = true }
wasmtime-wasi = { version = "18.0.3", optional = true }
wasmtime = { version = "20.0.0", optional = true }
wasi-common = { version = "20.0.0", optional = true }
tracing = { version = "0.1.40", features = ["attributes"] }
tracing-subscriber = { version = "0.3.18", features = ["json", "env-filter"] }
tracing-journald = "0.3.0"
[dev-dependencies]
serial_test = "3.0.0"
serial_test = "3.1.0"
tempfile = "3"
scopeguard = "1.2.0"

View File

@ -1,6 +1,6 @@
use libcontainer::oci_spec::runtime::Spec;
use wasmtime::*;
use wasmtime_wasi::WasiCtxBuilder;
use wasi_common::sync::{add_to_linker, WasiCtxBuilder};
use wasmtime::{Engine, Linker, Module, Store};
use libcontainer::workload::{Executor, ExecutorError, ExecutorValidationError, EMPTY};
@ -59,7 +59,7 @@ impl Executor for WasmtimeExecutor {
})?;
let mut linker = Linker::new(&engine);
wasmtime_wasi::add_to_linker(&mut linker, |s| s).map_err(|err| {
add_to_linker(&mut linker, |s| s).map_err(|err| {
tracing::error!(err = ?err, "cannot add wasi context to linker");
ExecutorError::Other("cannot add wasi context to linker".to_string())
})?;

View File

@ -11,7 +11,7 @@ pub fn gen_validate(arc: &Arch) -> Vec<Instruction> {
};
vec![
Instruction::stmt(BPF_LD | BPF_W | BPF_ABS, SECCOMP_DATA_ARCH_OFFSET as u32),
Instruction::stmt(BPF_LD | BPF_W | BPF_ABS, seccomp_data_arch_offset() as u32),
Instruction::jump(BPF_JMP | BPF_JEQ | BPF_K, 1, 0, arch),
Instruction::stmt(BPF_RET | BPF_K, SECCOMP_RET_KILL_PROCESS),
]

View File

@ -1,3 +1,5 @@
use std::{mem::offset_of, os::raw::c_int};
// BPF Instruction classes.
// See /usr/include/linux/bpf_common.h .
// Load operation.
@ -56,8 +58,51 @@ pub const AUDIT_ARCH_AARCH64: u32 = 183 | 0x8000_0000 | 0x4000_0000;
// __u64 args[6];
// };
// ```
pub const SECCOMP_DATA_ARCH_OFFSET: u8 = 4;
pub const SECCOMP_DATA_ARGS_OFFSET: u8 = 16;
pub const SECCOMP_DATA_ARG_SIZE: u8 = 8;
#[repr(C)]
struct SeccompData {
nr: c_int,
arch: u32,
instruction_pointer: u64,
args: [u64; 6],
}
pub const fn seccomp_data_arch_offset() -> u8 {
offset_of!(SeccompData, arch) as u8
}
pub const fn seccomp_data_arg_size() -> u8 {
8
}
pub const fn seccomp_data_args_offset() -> u8 {
offset_of!(SeccompData, args) as u8
}
pub const SECCOMP_IOC_MAGIC: u8 = b'!';
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_seccomp_data_arch_offset() {
if cfg!(target_arch = "x86_64") {
assert_eq!(seccomp_data_arch_offset(), 4);
}
}
#[test]
fn test_seccomp_data_arg_size_offset() {
if cfg!(target_arch = "x86_64") {
assert_eq!(seccomp_data_arg_size_offset(), 8);
}
}
#[test]
fn test_seccomp_data_args_offset() {
if cfg!(target_arch = "x86_64") {
assert_eq!(seccomp_data_args_offset(), 16);
}
}
}