Add structs from linux/uinput.h + a couple of input-related constants
I could also add the full constant list from `input-event-codes.h`, but that's about 1000 lines of constants and it's not necessary to interact with the ioctls, just to interpret the values they return/accept. Also, I made the `_CNT` constants usize instead of u16 since they're intended to be buffer lengths, not actual `input_event.code` (or whatever else) values.
Haiku: some type fixes for ioctl() arguments and readv()/writev(), and some missing constants
These two commits fix some issues that became visible while building libstd.
This crate's definition was recently updated to conform to the actual type
definition in the header files. However, this deviates from the standard,
and thus breaks building - amongst others - libstd. This reverts to the
original definition. Parallel to this, there is an effort to fix the
definition on Haiku. In the interim, the disparity between the definitions
should not cause any issues for users that pass valid vector sizes.
Add more unix domain socket peer information to more targets
* Add NetBSD peer credentials struct `unpcbid` and socket option `SO_PEEREID` (similar to Linux struct `ucred`).
(and some other socket options too along the way)
* Add `struct xucred`, `LOCAL_PEERCRED` and related to DragonFly BSD too.
* Add new `cr_pid` field to FreeBSD `struct xucred` (added in FreeBSD 13).
It is added through an union as in the C header to make sure the alignment is correct, but could probably be a simple field with padding too.
* Add `SO_PEERSEC` and `SO_PASSEC` to Android and all Linux architectures that they hadn't already been added to.
Re-add accept4 for Android on 32 bit ARM.
`accept4` was accidentally removed from 32 bit Android targets except for x86 in https://github.com/rust-lang/libc/pull/2079. This PR adds it back using the same definition as other non-x86 platforms.
dragonflybsd: expose waitid() prototype + related constants
This exposes the POSIX waitid() process management function and some related defined constants for dragonflybsd. It includes one correction: WSTOPPED which previously had the wrong value. Noticed this when a crate that depended on it, process_control, wouldn't compile on this platform.
This exposes the POSIX waitid() process management function and some related defined constants for dragonflybsd. It includes one correction: WSTOPPED which previously had the wrong value. Noticed this when a crate that depended on it, process_control, wouldn't compile on this platform.
Revert the solaris target renaming for semver check
The semver check uses an old nightly and it doesn't have the renamed target yet, I completely forgot it.
r? `@ghost`
Replace `x86_64-sun-solaris` with `x86_64-pc-solaris`
Address the changes by https://github.com/rust-lang/rust/pull/82216. I didn't add `x86_64-sun-solaris` as it's now deprecated.
r? `@ghost`
Remove CI support for `x86_64-rumprun-netbsd`
That target has been removed by https://github.com/rust-lang/rust/pull/82594.
This is intended to unblock CI and we could drop the actual library support for it like CloudABI.
r? `@ghost`
add definitions for s390x musl targets
Add support for s390x musl targets to libc.
I haven't added CI because I am not familiar with the pipelines, but would be glad to do so if somebody outlines what needs to be done.
use GNU/Linux siginfo_t on Android
Bionic uses an unchanged siginfo.h from the upstream linux so why not? :)
I literally just copied everything with siginfo_t from unix/linux_like/linux/gnu/mod.rs to unix/linux_like/android/mod.rs