summaryrefslogtreecommitdiff
path: root/vendor/linux-raw-sys/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/linux-raw-sys/README.md')
-rw-r--r--vendor/linux-raw-sys/README.md44
1 files changed, 44 insertions, 0 deletions
diff --git a/vendor/linux-raw-sys/README.md b/vendor/linux-raw-sys/README.md
new file mode 100644
index 0000000..b44ef22
--- /dev/null
+++ b/vendor/linux-raw-sys/README.md
@@ -0,0 +1,44 @@
+<div align="center">
+ <h1><code>linux-raw-sys</code></h1>
+
+ <p>
+ <strong>Generated bindings for Linux's userspace API</strong>
+ </p>
+
+ <p>
+ <a href="https://github.com/sunfishcode/linux-raw-sys/actions?query=workflow%3ACI"><img src="https://github.com/sunfishcode/linux-raw-sys/workflows/CI/badge.svg" alt="Github Actions CI Status" /></a>
+ <a href="https://bytecodealliance.zulipchat.com/#narrow/stream/206238-general"><img src="https://img.shields.io/badge/zulip-join_chat-brightgreen.svg" alt="zulip chat" /></a>
+ <a href="https://crates.io/crates/linux-raw-sys"><img src="https://img.shields.io/crates/v/linux-raw-sys.svg" alt="crates.io page" /></a>
+ <a href="https://docs.rs/linux-raw-sys"><img src="https://docs.rs/linux-raw-sys/badge.svg" alt="docs.rs docs" /></a>
+ </p>
+</div>
+
+This crate contains bindgen-generated bindings for Linux's userspace API.
+
+This is primarily of interest if you want to make raw system calls directly,
+which is tedious and error prone and not necessary for most use cases. For a
+minimal type-safe, memory-safe, and I/O-safe API to the Linux system calls
+built on these bindings, see the [rustix crate].
+
+The full bindings are quite large, so they've been split up into modules and
+cargo features. By default, `general` and `errno` are enabled, which provide
+most things needed by general-purpose code.
+
+To regenerate the generated bindings, run `cargo update && cd gen && cargo run --release`.
+
+## Similar crates
+
+This is similar to [linux-sys], except the bindings are generated offline,
+rather than in a build.rs, making downstream builds simpler. And, this crate
+has bindings for more headers, as well as supplementary definitions not
+exported by Linux's headers but nonetheless needed by userspace.
+
+# Minimum Supported Rust Version (MSRV)
+
+This crate currently works on the version of [Rust on Debian stable], which is
+currently Rust 1.63. This policy may change in the future, in minor version
+releases, so users using a fixed version of Rust should pin to a specific
+version of this crate.
+
+[linux-sys]: https://crates.io/crates/linux-sys
+[rustix crate]: https://github.com/bytecodealliance/rustix#linux-raw-syscall-support