Expose signal value of siginfo_t
Currently exposes it for following platforms:
- Linux has it as enum _timer and it is exposed alongside sigval
- On FreeBSD like systems si_value follows after si_addr (according to headers)
- Darwin is similar to FreeBSD
- NetBSD and FreeBSD uses struct that contains pid, uid, and si_value. Exposed via it
P.s. I'd like to take a look at other platforms too, but these are what I know so far.
FreeBSD needs some testing though
cc @gnzlbg
Remove AF_MAX, PF_MAX, NET_MAXID constants
These constants have already been deprecated for a few releases with
a deprecation notice, so they can finally be removed.
Closesrust-lang/libc#665
Reduce appveyor churn
This should reduce the Appveyorn churn for other projects a bit more.
Please let me know if there is anything else that can be done. Maybe the infra team could discuss whether to document some general guidelines for rust-lang and rust-lang-nursery projects, and write them down somewhere. I would be willing to help.
cc @RalfJung @Mark-Simulacrum
Update ctest version
The latest ctest version enabled the ABI roundtrip test by default, in which we initialize all types in Rust by default to some random bit-pattern, pass them to C, verify, modify, pass back to Rust, and verify.
This catches issues in the call ABI / calling convention.
This PR will silence those here for now.
wasi: add c_schar definition
This fixes an issue when building https://github.com/capstone-rust/capstone-rs/ for WASI.
Otherwise, I get:
~~~
error[E0412]: cannot find type `c_schar` in module `libc`
--> /home/user/capstone-rs/target/wasm32-wasi/debug/build/capstone-sys-1019f1f8759b0d05/out/capstone.rs:4:27
|
4 | pub type __int8_t = libc::c_schar;
| ^^^^^^^ help: a type alias with a similar name exists: `c_char`
error: aborting due to previous error
For more information about this error, try `rustc --explain E0412`.
error: Could not compile `capstone-sys`.
~~~
The file with the error is generated with bindgen:
a74126cd88/capstone-sys/pre_generated/capstone.rs (L3-L5)
Remove new field from ucontext_t for compatibility with earlier glibc versions
Per discussion in #1410 with @gnzlbg, this is necessary to avoid struct size mismatches between Rust and C on systems with glibc < 2.28.
Add RTM_* constants to linux/mod.rs for rtnetlink
There is one last set of constants I'm looking to get added to libc for rtnetlink support in my netlink library. I'm going to follow this up with a release PR once this PR is merged.