crosvm/common
Keiichi Watanabe 91019884bb sys_util: Replace unsafe use of iovecs
`sys_util::recv_iovecs_with_fds` was implemented as a safe function, but
it was actually unsafe because it assumed that the caller would give a
slice of `libc::iovec` where each `iov_base` points a valid memory
region with `iov_len`.

To make the function truly safe, it should take a slice of IoSliceMut
instead.

BUG=none
TEST=cargo test in sys_util/vmm_vhost
TEST=vhost-user block still works

Change-Id: I45458ee4545af13ce7e0955fb67b3703b147e7df
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3288733
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>
2021-11-26 14:28:28 +00:00
..
assertions Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
audio_streams audio_streams: Introduce SharedMemory trait for base::SharedMemory 2021-11-18 08:45:14 +00:00
base audio_streams: Introduce SharedMemory trait for base::SharedMemory 2021-11-18 08:45:14 +00:00
cros-fuzz Clippy fixes in common/* crates 2021-11-15 23:08:55 +00:00
cros_async Clippy fixes in common/* crates 2021-11-15 23:08:55 +00:00
data_model Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
io_uring Clippy fixes in common/* crates 2021-11-15 23:08:55 +00:00
p9 Clippy fixes in common/* crates 2021-11-15 23:08:55 +00:00
sync Refactoring: Move various general purpose crates to common/ 2021-10-29 22:31:43 +00:00
sys_util sys_util: Replace unsafe use of iovecs 2021-11-26 14:28:28 +00:00
README.md Import cros-fuzz and p9 into crosvm/common 2021-08-03 02:25:01 +00:00

Crosvm General Purpose Libraries

The crates in this folder are general purpose libraries used by other projects in ChromeOS as well.

To make them accessible independendly of crosvm, each of these crates is excluded from the crosvm workspace.

List of libraries

  • cros-fuzz: Support crate for fuzzing rust code in ChromeOS
  • p9: Server implementation of the 9p file system protocol