libc
libc copied to clipboard
Raw bindings to platform APIs for Rust
(`mem::zeroed()` is never going to be const, and `MaybeUninit::zeroed().assume_init()` is still not const)
This PR aligns the value of `FAN_MARK_IGNORE` in libc with that in [`uapi/linux/fanotify.h`](https://github.com/torvalds/linux/blob/741e9d66/include/uapi/linux/fanotify.h#L87). Previously, it was incorrectly set to the value of `FAN_MARK_MOUNT`, which can cause subtle but catastrophic bugs...
It's common for C APIs to define constant values to denote the "last" value in a set of constants, like `ELAST` or `IPPROTO_MAX`. This seems prone to weird bugs, and...
While using **socket** API in cloud-hypervisor project, I noticed an inconsistency with `msghdr` struct between `gnu` and `musl` targets. In **gnu** `msghdr.msg_iovlen` is declared as `size_t` https://github.com/rust-lang/libc/blob/0488a83dc9aba7ec0643ea45d85cc722891e8cc2/src/unix/linux_like/linux/gnu/mod.rs#L95 In **musl** `msghdr.msg_iovlen`...
This PR removes placeholder constants as described in #3131. Below are lists of patterns matched for unused constant names. It also includes an update of the `IPROTO_MAX` constant on newer...
Added socket options, structs and other miscellaneous constants that make memory-mapped packet sockets possible in Linux--PACKET_TX_RING, PACKET_RX_RING, etc. (adding this to libc 0.2 as 0.3 is in early development)
target: ppc64le-unknown-linux-gnu & stable-x86_64-unknown-linux-gnu a statically compiled kata agent binary crashes in what looks to be a dynamic-library-related function. The binaries were built using the latest libc so that we...
In the libc-0.2 branch, making any change (such as modifying a README) results in CI failure due to a linking error in `aarch64-unknown-linux-musl`. It appears that one of the tests...
Rebase of #2088. This PR changes the supported version of musl libc to 1.2.3. The bulk of the changes in this PR are a result of `time_t` changes to support...