[Libguestfs] Rust Bindings for Libnbd

Tage Johansson
2023-06-20T09:31:35Z

This is Tage. I am a Google Summer of Code contributer this summer
working on Rust bindings for Libnbd. So far, I have made a very basic
first draft which is far from complete. But I'll send the patches anyway
so you can take a look.

I have created "generator/Rust.ml" which generates Rust code for
constants, flags, enums and handle calls. The top level "rust/"
directory contains the actual Rust crate. The make script generates
documentation with Rustdoc which can be found in
"rust/target/doc/libnbd/index.html".

To generate low level bindings,
[rust-bindgen](https://github.com/rust-lang/rust-bindgen) is used. This
means that Clang is required to build the bindings. I plan on removing
this dependency in the future though.

Feel free to send any comments and ideas, butI emphasize again that this
is just a first draft, and there is much more work to do.

Best regards,
Tage