summary refs log tree commit diff stats
path: root/rust/qemu-api/src/lib.rs
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2024-11-14 09:05:38 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2025-02-25 16:18:08 +0100
commit8a420dd109b9e4e2244cfa32bc92829093268b3e (patch)
tree40e9db642b552c7bb840cd7f46bda933d2e0c517 /rust/qemu-api/src/lib.rs
parent4cfe9edb1b1961af9cda74351f73b0abb3159b67 (diff)
downloadfocaccia-qemu-8a420dd109b9e4e2244cfa32bc92829093268b3e.tar.gz
focaccia-qemu-8a420dd109b9e4e2244cfa32bc92829093268b3e.zip
rust: add module to convert between success/-errno and io::Result
It is a common convention in QEMU to return a positive value in case of
success, and a negated errno value in case of error.  Unfortunately,
using errno portably in Rust is a bit complicated; on Unix the errno
values are supported natively by io::Error, but on Windows they are not;
so, use the libc crate.

This is a set of utility functions that are used by both chardev and
block layer bindings.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'rust/qemu-api/src/lib.rs')
-rw-r--r--rust/qemu-api/src/lib.rs1
1 files changed, 1 insertions, 0 deletions
diff --git a/rust/qemu-api/src/lib.rs b/rust/qemu-api/src/lib.rs
index ed1a8f9a2b..05f38b51d3 100644
--- a/rust/qemu-api/src/lib.rs
+++ b/rust/qemu-api/src/lib.rs
@@ -19,6 +19,7 @@ pub mod c_str;
 pub mod callbacks;
 pub mod cell;
 pub mod chardev;
+pub mod errno;
 pub mod irq;
 pub mod memory;
 pub mod module;