2020-07-16 15:44:36 +01:00
|
|
|
[package]
|
|
|
|
name = "cloud-hypervisor-fuzz"
|
|
|
|
version = "0.0.0"
|
|
|
|
authors = ["Automatically generated"]
|
|
|
|
publish = false
|
2022-04-08 15:11:04 +00:00
|
|
|
edition = "2021"
|
2020-07-16 15:44:36 +01:00
|
|
|
|
|
|
|
[package.metadata]
|
|
|
|
cargo-fuzz = true
|
|
|
|
|
2023-10-04 18:07:45 -07:00
|
|
|
[features]
|
|
|
|
igvm = []
|
|
|
|
|
2020-07-16 15:44:36 +01:00
|
|
|
[dependencies]
|
2023-07-12 10:24:28 +08:00
|
|
|
block = { path = "../block" }
|
2022-07-26 16:30:56 +01:00
|
|
|
devices = { path = "../devices" }
|
2022-07-28 17:07:32 -07:00
|
|
|
epoll = "4.3.1"
|
build: Bump vmm-sys-util crate and its consumers
This patch bumps the following crates, including `kvm-bindings@0.7.0`*,
`kvm-ioctls@0.16.0`**, `linux-loader@0.11.0`, `versionize@0.2.0`,
`versionize_derive@0.1.6`***, `vhost@0.10.0`,
`vhost-user-backend@0.13.1`, `virtio-queue@0.11.0`, `vm-memory@0.14.0`,
`vmm-sys-util@0.12.1`, and the latest of `vfio-bindings`, `vfio-ioctls`,
`mshv-bindings`,`mshv-ioctls`, and `vfio-user`.
* A fork of the `kvm-bindings` crate is being used to support
serialization of various structs for migration [1]. Also, code changes
are made to accommodate the updated `struct xsave` from the Linux
kernel. Note: these changes related to `struct xsave` break
live-upgrade.
** The new `kvm-ioctls` crate introduced breaking changes for
the `get/set_one_reg` API on `aarch64` [2], so code changes are made to
the new APIs.
*** A fork of the `versionize_derive` crate is being used to support
versionize on packed structs [3].
[1] https://github.com/cloud-hypervisor/kvm-bindings/tree/ch-v0.7.0
[2] https://github.com/rust-vmm/kvm-ioctls/pull/223
[3] https://github.com/cloud-hypervisor/versionize_derive/tree/ch-0.1.6
Fixes: #6072
Signed-off-by: Bo Chen <chen.bo@intel.com>
(cherry picked from commit 3ce0fef7fd546467398c914dbc74d8542e45cf6f)
2024-01-23 09:29:40 -08:00
|
|
|
libc = "0.2.152"
|
2023-08-11 23:19:24 +00:00
|
|
|
libfuzzer-sys = "0.4.7"
|
build: Bump vmm-sys-util crate and its consumers
This patch bumps the following crates, including `kvm-bindings@0.7.0`*,
`kvm-ioctls@0.16.0`**, `linux-loader@0.11.0`, `versionize@0.2.0`,
`versionize_derive@0.1.6`***, `vhost@0.10.0`,
`vhost-user-backend@0.13.1`, `virtio-queue@0.11.0`, `vm-memory@0.14.0`,
`vmm-sys-util@0.12.1`, and the latest of `vfio-bindings`, `vfio-ioctls`,
`mshv-bindings`,`mshv-ioctls`, and `vfio-user`.
* A fork of the `kvm-bindings` crate is being used to support
serialization of various structs for migration [1]. Also, code changes
are made to accommodate the updated `struct xsave` from the Linux
kernel. Note: these changes related to `struct xsave` break
live-upgrade.
** The new `kvm-ioctls` crate introduced breaking changes for
the `get/set_one_reg` API on `aarch64` [2], so code changes are made to
the new APIs.
*** A fork of the `versionize_derive` crate is being used to support
versionize on packed structs [3].
[1] https://github.com/cloud-hypervisor/kvm-bindings/tree/ch-v0.7.0
[2] https://github.com/rust-vmm/kvm-ioctls/pull/223
[3] https://github.com/cloud-hypervisor/versionize_derive/tree/ch-0.1.6
Fixes: #6072
Signed-off-by: Bo Chen <chen.bo@intel.com>
(cherry picked from commit 3ce0fef7fd546467398c914dbc74d8542e45cf6f)
2024-01-23 09:29:40 -08:00
|
|
|
linux-loader = { version = "0.11.0", features = ["elf", "bzimage", "pe"] }
|
2022-07-28 17:07:32 -07:00
|
|
|
micro_http = { git = "https://github.com/firecracker-microvm/micro-http", branch = "main" }
|
2022-11-23 15:23:00 -08:00
|
|
|
net_util = { path = "../net_util" }
|
2023-12-13 23:45:07 +00:00
|
|
|
once_cell = "1.19.0"
|
2023-10-30 11:31:10 -07:00
|
|
|
seccompiler = "0.4.0"
|
2020-07-20 16:41:40 +01:00
|
|
|
virtio-devices = { path = "../virtio-devices" }
|
build: Bump vmm-sys-util crate and its consumers
This patch bumps the following crates, including `kvm-bindings@0.7.0`*,
`kvm-ioctls@0.16.0`**, `linux-loader@0.11.0`, `versionize@0.2.0`,
`versionize_derive@0.1.6`***, `vhost@0.10.0`,
`vhost-user-backend@0.13.1`, `virtio-queue@0.11.0`, `vm-memory@0.14.0`,
`vmm-sys-util@0.12.1`, and the latest of `vfio-bindings`, `vfio-ioctls`,
`mshv-bindings`,`mshv-ioctls`, and `vfio-user`.
* A fork of the `kvm-bindings` crate is being used to support
serialization of various structs for migration [1]. Also, code changes
are made to accommodate the updated `struct xsave` from the Linux
kernel. Note: these changes related to `struct xsave` break
live-upgrade.
** The new `kvm-ioctls` crate introduced breaking changes for
the `get/set_one_reg` API on `aarch64` [2], so code changes are made to
the new APIs.
*** A fork of the `versionize_derive` crate is being used to support
versionize on packed structs [3].
[1] https://github.com/cloud-hypervisor/kvm-bindings/tree/ch-v0.7.0
[2] https://github.com/rust-vmm/kvm-ioctls/pull/223
[3] https://github.com/cloud-hypervisor/versionize_derive/tree/ch-0.1.6
Fixes: #6072
Signed-off-by: Bo Chen <chen.bo@intel.com>
(cherry picked from commit 3ce0fef7fd546467398c914dbc74d8542e45cf6f)
2024-01-23 09:29:40 -08:00
|
|
|
virtio-queue = "0.11.0"
|
2022-07-28 17:07:32 -07:00
|
|
|
vmm = { path = "../vmm" }
|
build: Bump vmm-sys-util crate and its consumers
This patch bumps the following crates, including `kvm-bindings@0.7.0`*,
`kvm-ioctls@0.16.0`**, `linux-loader@0.11.0`, `versionize@0.2.0`,
`versionize_derive@0.1.6`***, `vhost@0.10.0`,
`vhost-user-backend@0.13.1`, `virtio-queue@0.11.0`, `vm-memory@0.14.0`,
`vmm-sys-util@0.12.1`, and the latest of `vfio-bindings`, `vfio-ioctls`,
`mshv-bindings`,`mshv-ioctls`, and `vfio-user`.
* A fork of the `kvm-bindings` crate is being used to support
serialization of various structs for migration [1]. Also, code changes
are made to accommodate the updated `struct xsave` from the Linux
kernel. Note: these changes related to `struct xsave` break
live-upgrade.
** The new `kvm-ioctls` crate introduced breaking changes for
the `get/set_one_reg` API on `aarch64` [2], so code changes are made to
the new APIs.
*** A fork of the `versionize_derive` crate is being used to support
versionize on packed structs [3].
[1] https://github.com/cloud-hypervisor/kvm-bindings/tree/ch-v0.7.0
[2] https://github.com/rust-vmm/kvm-ioctls/pull/223
[3] https://github.com/cloud-hypervisor/versionize_derive/tree/ch-0.1.6
Fixes: #6072
Signed-off-by: Bo Chen <chen.bo@intel.com>
(cherry picked from commit 3ce0fef7fd546467398c914dbc74d8542e45cf6f)
2024-01-23 09:29:40 -08:00
|
|
|
vmm-sys-util = "0.12.1"
|
|
|
|
vm-memory = "0.14.0"
|
|
|
|
vm-migration = { path = "../vm-migration" }
|
2022-07-26 16:30:56 +01:00
|
|
|
vm-device = { path = "../vm-device" }
|
|
|
|
vm-virtio = { path = "../vm-virtio" }
|
2020-07-16 15:44:36 +01:00
|
|
|
|
|
|
|
[dependencies.cloud-hypervisor]
|
|
|
|
path = ".."
|
|
|
|
|
2021-05-12 13:06:01 +01:00
|
|
|
[patch.crates-io]
|
build: Bump vmm-sys-util crate and its consumers
This patch bumps the following crates, including `kvm-bindings@0.7.0`*,
`kvm-ioctls@0.16.0`**, `linux-loader@0.11.0`, `versionize@0.2.0`,
`versionize_derive@0.1.6`***, `vhost@0.10.0`,
`vhost-user-backend@0.13.1`, `virtio-queue@0.11.0`, `vm-memory@0.14.0`,
`vmm-sys-util@0.12.1`, and the latest of `vfio-bindings`, `vfio-ioctls`,
`mshv-bindings`,`mshv-ioctls`, and `vfio-user`.
* A fork of the `kvm-bindings` crate is being used to support
serialization of various structs for migration [1]. Also, code changes
are made to accommodate the updated `struct xsave` from the Linux
kernel. Note: these changes related to `struct xsave` break
live-upgrade.
** The new `kvm-ioctls` crate introduced breaking changes for
the `get/set_one_reg` API on `aarch64` [2], so code changes are made to
the new APIs.
*** A fork of the `versionize_derive` crate is being used to support
versionize on packed structs [3].
[1] https://github.com/cloud-hypervisor/kvm-bindings/tree/ch-v0.7.0
[2] https://github.com/rust-vmm/kvm-ioctls/pull/223
[3] https://github.com/cloud-hypervisor/versionize_derive/tree/ch-0.1.6
Fixes: #6072
Signed-off-by: Bo Chen <chen.bo@intel.com>
(cherry picked from commit 3ce0fef7fd546467398c914dbc74d8542e45cf6f)
2024-01-23 09:29:40 -08:00
|
|
|
kvm-bindings = { git = "https://github.com/cloud-hypervisor/kvm-bindings", branch = "ch-v0.7.0" }
|
|
|
|
versionize_derive = { git = "https://github.com/cloud-hypervisor/versionize_derive", branch = "ch-0.1.6" }
|
2021-05-12 13:06:01 +01:00
|
|
|
|
2020-07-16 15:44:36 +01:00
|
|
|
# Prevent this from interfering with workspaces
|
|
|
|
[workspace]
|
|
|
|
members = ["."]
|
|
|
|
|
2022-09-16 13:35:09 -07:00
|
|
|
[[bin]]
|
|
|
|
name = "balloon"
|
|
|
|
path = "fuzz_targets/balloon.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
|
|
|
|
2020-07-16 15:44:36 +01:00
|
|
|
[[bin]]
|
2022-07-27 10:35:22 +01:00
|
|
|
name = "block"
|
|
|
|
path = "fuzz_targets/block.rs"
|
2020-07-16 15:44:36 +01:00
|
|
|
test = false
|
|
|
|
doc = false
|
2020-07-20 16:41:40 +01:00
|
|
|
|
|
|
|
[[bin]]
|
2022-07-27 10:35:22 +01:00
|
|
|
name = "cmos"
|
|
|
|
path = "fuzz_targets/cmos.rs"
|
2020-07-20 16:41:40 +01:00
|
|
|
test = false
|
|
|
|
doc = false
|
2021-08-02 11:51:36 -04:00
|
|
|
|
2022-11-01 13:39:45 -07:00
|
|
|
[[bin]]
|
|
|
|
name = "console"
|
|
|
|
path = "fuzz_targets/console.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
|
|
|
|
2022-07-28 17:07:32 -07:00
|
|
|
[[bin]]
|
|
|
|
name = "http_api"
|
|
|
|
path = "fuzz_targets/http_api.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
|
|
|
|
2022-10-18 15:12:55 -07:00
|
|
|
[[bin]]
|
|
|
|
name = "iommu"
|
|
|
|
path = "fuzz_targets/iommu.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
|
|
|
|
2022-12-05 16:53:13 -08:00
|
|
|
[[bin]]
|
|
|
|
name = "linux_loader"
|
|
|
|
path = "fuzz_targets/linux_loader.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
|
|
|
|
2022-12-07 11:32:14 -08:00
|
|
|
[[bin]]
|
|
|
|
name = "linux_loader_cmdline"
|
|
|
|
path = "fuzz_targets/linux_loader_cmdline.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
|
|
|
|
2022-10-10 18:18:19 -07:00
|
|
|
[[bin]]
|
|
|
|
name = "mem"
|
|
|
|
path = "fuzz_targets/mem.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
|
|
|
|
2022-11-23 15:23:00 -08:00
|
|
|
[[bin]]
|
|
|
|
name = "net"
|
|
|
|
path = "fuzz_targets/net.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
|
|
|
|
2022-09-12 16:46:44 -07:00
|
|
|
[[bin]]
|
|
|
|
name = "pmem"
|
|
|
|
path = "fuzz_targets/pmem.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
|
|
|
|
2021-08-02 11:51:36 -04:00
|
|
|
[[bin]]
|
2022-07-27 10:35:22 +01:00
|
|
|
name = "qcow"
|
|
|
|
path = "fuzz_targets/qcow.rs"
|
2021-08-02 11:51:36 -04:00
|
|
|
test = false
|
|
|
|
doc = false
|
2022-07-26 16:30:56 +01:00
|
|
|
|
2022-09-19 16:43:10 -07:00
|
|
|
[[bin]]
|
|
|
|
name = "rng"
|
|
|
|
path = "fuzz_targets/rng.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
|
|
|
|
2022-07-26 16:30:56 +01:00
|
|
|
[[bin]]
|
|
|
|
name = "serial"
|
|
|
|
path = "fuzz_targets/serial.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|
2022-07-26 16:30:56 +01:00
|
|
|
|
|
|
|
[[bin]]
|
2022-07-27 10:35:22 +01:00
|
|
|
name = "vhdx"
|
|
|
|
path = "fuzz_targets/vhdx.rs"
|
2022-07-26 16:30:56 +01:00
|
|
|
test = false
|
|
|
|
doc = false
|
2022-09-15 16:16:16 -07:00
|
|
|
|
|
|
|
[[bin]]
|
|
|
|
name = "watchdog"
|
|
|
|
path = "fuzz_targets/watchdog.rs"
|
|
|
|
test = false
|
|
|
|
doc = false
|