| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| | |
add remaining pktinfo consts/structs for the other BSDs
This continues the work from https://github.com/rust-lang/libc/pull/980, adding a more complete set of supported platforms for the "I want to know what destination this UDP packet had" problem.
|
| | |
|
|/
|
|
| |
Signed-off-by: Arvid E. Picciani <aep@exys.org>
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
Fix undefined-behavior on MacOSX structs in stdbuilds
Some MacOSX structs have an incorrect layout that results in undefined behavior. This is because on `x86_64` the MacOSX kernel headers define these using `#pragma pack 4`.
This PR fixes their layout using `repr(packed(4))` . Since it is only available on nightly, it is only enabled for stdbuilds .
|
| | |
|
| | |
|
|/ |
|
|\
| |
| |
| |
| |
| |
| |
| | |
Make netlink struct fields public
I realized my netlink structs were a bit unusable if their fields are not public :man_facepalming:
Follow up and improvement to #922
|
| | |
|
|/ |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add PTHREAD_*_MUTEX_INITIALIZER_NP for glibc
`pthread_mutex_t` varies across architectures, in several ways:
- endianness alters the ordering of bytes, since the contents of the
struct are larger than 8-bit.
- its length varies.
- the location of the mutex kind (`PTHREAD_MUTEX_RECURSIVE`,
`PTHREAD_MUTEX_ERRORCHECK` or `PTHREAD_MUTEX_ADAPTIVE_NP`) varies
between 32-bit and 64-bit: On 32-bit architectures, it is preceded by
three int/unsigned int, while on 64-bit architectures, it is preceded
by four of them.
These initializers are only available from <pthread.h> when _GNU_SOURCE
is defined.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
`pthread_mutex_t` varies across architectures, in several ways:
- endianness alters the ordering of bytes, since the contents of the
struct are larger than 8-bit.
- its length varies.
- the location of the mutex kind (`PTHREAD_MUTEX_RECURSIVE`,
`PTHREAD_MUTEX_ERRORCHECK` or `PTHREAD_MUTEX_ADAPTIVE_NP`) varies
between 32-bit and 64-bit: On 32-bit architectures, it is preceded by
three int/unsigned int, while on 64-bit architectures, it is preceded
by four of them.
These initializers are only available from <pthread.h> when _GNU_SOURCE
is defined.
Relax the cfg_if check in ci/style.rs to allow #[cfg(target_endian)]
tests.
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add MAP_STACK constant to OpenBSD
The mmap(2) flag indicate that the mapping is used as a stack.
https://man.openbsd.org/mmap.2#MAP_STACK
https://marc.info/?l=openbsd-tech&m=152035796722258&w=2
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The mmap(2) flag indicate that the mapping is used as a stack.
https://man.openbsd.org/mmap.2#MAP_STACK
https://marc.info/?l=openbsd-tech&m=152035796722258&w=2
|
| | |
| | |
| | |
| | | |
This fixes a consistency issue with the other operator traits.
|
| |/
|/|
| |
| | |
Fixes: #961
|
|\ \
| | |
| | |
| | |
| | |
| | | |
Fix libstd build for mips*-unknown-linux-uclibc
The getrandom syscall related constant were missing. This PR adds full syscall table just in case and few other nits.
|
| | | |
|
| | | |
|
|/ /
| |
| |
| |
| |
| | |
Include ioctl commands for becoming controlling tty and setting window
size. This enables https://github.com/jwilm/alacritty to be built and
run on OpenBSD 6.3. NetBSD and kin share the same command constants.
|
|\ \
| | |
| | |
| | | |
Add MCL_CURRENT and MCL_FUTURE to s390.
|
| |/ |
|
|\ \
| | |
| | |
| | |
| | |
| | | |
Add strtonum to OpenBSD
OpenBSD provides [strtonum](http://man.openbsd.org/strtonum) but it is not in libc, yet.
|
| | | |
|
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The libc crate is used as a dependency of the Rust compiler. Its build
system passes `--cfg dox` to all crates when generating their
documentation. libc's documentation is generated when the build system
is asked to generate the compiler documentation because `cargo doc`
automatically documents all dependencies.
When the dox configuration option is enabled, libc disables its
dependency on the core crate and provides the necessary definitions
itself. The dox configuration option is meant for generating
documentation for a multitude of targets even if the core crate for that
target is not installed. However, when documenting the compiler, it's
not necessary to do that; we can just use core or std as usual.
This change is motivated by the changes made to the compiler in
rust-lang/rust#48171. With these changes, it's necessary to provide
implementations of the Clone and Copy traits for some primitive types in
the library that defines these traits (previously, these implementations
were provided by the compiler). Normally, these traits (and thus the
implementations) are provided by core, so any crate that uses
`#![no_core]` must now provide its own copy of the implementations.
Because libc doesn't provide its own copy of the implementations yet,
and because the compiler's build system passes `--cfg dox` to libc,
generating the documentation for the compiler fails when generating
documentation for libc. By renaming the configuration option, libc will
use core or std and will thus have the necessary definitions for the
documentation to be generated successfully.
|
| | |
|
|\ \
| |/
|/| |
|
| | |
|
|/ |
|
|\
| |
| |
| | |
Add ___errno() for Solaris
|
| | |
|
|/
|
|
|
| |
Add sparc64-unknown-linux-gnu and x86_64-sun-solaris.
Remove aarch64-unknown-linux-musl.
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
Arguments of pledge(2) changed.
The arguments of pledge(2) have changed. However, the changes have to yet been propagated to Bitrig.
https://marc.info/?l=openbsd-tech&m=151268831628549&w=2
|
| |
| |
| |
| | |
https://marc.info/?l=openbsd-tech&m=151268831628549&w=2
|
|\ \
| | |
| | |
| | |
| | |
| | | |
Recycle IFF_NOTRAILERS into IFF_STATICARP in OpenBSD but not in Bitrig.
https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/net/if.h?rev=1.190&content-type=text/x-cvsweb-markup
|
| |/
| |
| |
| | |
https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/net/if.h?rev=1.190&content-type=text/x-cvsweb-markup
|
|/ |
|
| |
|
|
|
|
| |
Sorry, accidentally forgot this when submitting #934..
|
|\
| |
| |
| |
| |
| |
| |
| | |
Add passwd/group APIs needed for nix-rust/nix#864
Hope I did this right. I only added platforms I could personally test. . .
cc: @gnzlbg
|