summary refs log tree commit diff stats
path: root/rust/qemu-api/src/prelude.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/prelude.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/prelude.rs')
-rw-r--r--rust/qemu-api/src/prelude.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/rust/qemu-api/src/prelude.rs b/rust/qemu-api/src/prelude.rs
index fbf0ee23e0..634acf37a8 100644
--- a/rust/qemu-api/src/prelude.rs
+++ b/rust/qemu-api/src/prelude.rs
@@ -9,6 +9,8 @@ pub use crate::bitops::IntegerExt;
 pub use crate::cell::BqlCell;
 pub use crate::cell::BqlRefCell;
 
+pub use crate::errno;
+
 pub use crate::qdev::DeviceMethods;
 
 pub use crate::qom::InterfaceType;