• Home
  • Raw
  • Download

Lines Matching +full:bare +full:- +full:fs

12 …alliance.zulipchat.com/#narrow/stream/206238-general"><img src="https://img.shields.io/badge/zulip
18 `rustix` provides efficient memory-safe and [I/O-safe] wrappers to POSIX-like,
19 Unix-like, Linux, and Winsock syscall-like APIs, with configurable backends.
23 [`bitflags`] instead of bare integer flags, an [`Arg`] trait with optimizations
27 `rustix` is low-level and, and while the `net` API supports [Windows Sockets 2]
28 (Winsock), the rest of the APIs do not support Windows; for higher-level and
29 more portable APIs built on this functionality, see the [`cap-std`], [`memfd`],
30 [`timerfd`], and [`io-streams`] crates, for example.
35 supported on Linux on x86-64, x86, aarch64, riscv64gc, powerpc64le,
37 - By being implemented entirely in Rust, avoiding `libc`, `errno`, and pthread
41 - Most functions in `linux_raw` preserve memory, I/O safety, and pointer
45 libraries on Unix-family platforms, and [`windows-sys`] for Winsock on
49 enable the libc backend instead, either enable the "use-libc" cargo feature,
50 or set the `RUSTFLAGS` environment variable to `--cfg=rustix_use_libc` when
59 | ---------- | -------------------------------------------------------------- |
61 | `fs` | [`rustix::fs`]—Filesystem operations. |
65 | `net` | [`rustix::net`]—Network-related operations. |
68 | `process` | [`rustix::process`]—Process-associated operations. |
71 | `rand` | [`rustix::rand`]—Random-related operations. |
73 | `stdio` | [`rustix::stdio`]—Stdio-related operations. |
74 | `system` | [`rustix::system`]—System-related operations. |
76 | `thread` | [`rustix::thread`]—Thread-associated operations. |
77 | `time` | [`rustix::time`]—Time-related operations. |
79 | `use-libc` | Enable the libc backend. |
82 [`rustix::fs`]: https://docs.rs/rustix/*/rustix/fs/index.html
103 ## 64-bit Large File Support (LFS) and Year 2038 (y2038) support
105 `rustix` automatically uses 64-bit APIs when available, and avoids exposing
106 32-bit APIs that would have the year-2038 problem or fail to support large
108 struct that's 64-bit even on 32-bit platforms.
118 users to use a variety of string types, including non-UTF-8 string types.
121 C-compatible interfaces and higher-level C/POSIX standard-library
123 to low-level syscalls. `relibc` also doesn't tend to support features not
136 way, so users don't need to open `.` to get a current-directory handle.
144 `tcsetattr` are `enum`s rather than bare integers. And, rustix calls its
158 - [any current Rust target], or
159 - [kernel.org] at the time of rustix's [MSRV] release.
163 [MSRV]: #minimum-supported-rust-version-msrv
164 [Rust 1.63]: https://blog.rust-lang.org/2022/08/11/Rust-1.63.0.html
165 [any current Rust target]: https://doc.rust-lang.org/nightly/rustc/platform-support.html
168 …Windows Sockets 2]: https://learn.microsoft.com/en-us/windows/win32/winsock/windows-sockets-start-
175 [`relibc`]: https://gitlab.redox-os.org/redox-os/relibc
181 [I/O safety types]: https://doc.rust-lang.org/stable/std/os/fd/index.html#structs
184 [`windows-sys`]: https://crates.io/crates/windows-sys
185 [`cap-std`]: https://crates.io/crates/cap-std
188 [`io-streams`]: https://crates.io/crates/io-streams
191 [I/O-safe]: https://github.com/rust-lang/rfcs/blob/master/text/3128-io-safety.md
192 [I/O safety]: https://github.com/rust-lang/rfcs/blob/master/text/3128-io-safety.md
193 [provenance]: https://github.com/rust-lang/rust/issues/95228
194 [`OwnedFd`]: https://doc.rust-lang.org/stable/std/os/fd/struct.OwnedFd.html
195 [`AsFd`]: https://doc.rust-lang.org/stable/std/os/fd/trait.AsFd.html