3 releases (breaking)
0.3.0 | Jul 20, 2023 |
---|---|
0.2.0 | Oct 18, 2021 |
0.1.0 | Oct 27, 2020 |
#891 in Filesystem
2,323 downloads per month
61KB
899 lines
NBDKit
Rust bindings to the Network Block Device Kit library.
Overview
NBDKit is a framework for developing Network Block Device servers. Most of the logic lives in the C code, but there are plugins to implement a server in another language, such as Rust.
Usage
To create an NBD server in Rust, you must implement the nbdkit::Server
trait, and register it with nbdkit::plugin!
, like this:
[dependencies]
nbdkit = "0.1.0"
use nbdkit::*;
#[derive(Default)]
struct MyPlugin {
// ...
}
impl Server for MyPlugin {
// ...
}
plugin!(MyPlugin {write_at, trim, ...});
Minimum Supported Rust Version (MSRV)
nbdkit
is supported on Rust 1.46.0 and higher. The MSRV will not be
changed in the future without raising the major or minor version.
License
nbdkit
is primarily distributed under the 2-clause BSD liense. See
LICENSE for details.
Dependencies
~79–520KB
~12K SLoC