Age | Commit message (Collapse) | Author |
|
|
|
912: Fix compilation on aarch64-unknown-linux-musl r=Susurrus a=Susurrus
trust/cross don't support this architecture, so it's non-trivial to add CI testing for this to nix, but this fixed it locally for me. Since it's not a supported platform, I haven't added anything to the CHANGELOG, since this could break before the next release.
Co-authored-by: Bryant Mairs <bryantmairs@google.com>
|
|
|
|
911: Start the next dev cycle r=Susurrus a=Susurrus
bors r+
Co-authored-by: Bryant Mairs <bryantmairs@google.com>
|
|
|
|
910: Specify bytes version r=Susurrus a=Susurrus
Needed to do this for the v0.11.0 release, but I missed it on my first pass through. Also updated the release notes to hopefully prevent this error in the future.
Co-authored-by: Bryant Mairs <bryantmairs@google.com>
|
|
It can be easy to miss something that's required for a
release, so run cargo publish as a dry run to make sure
everything's set.
|
|
|
|
908: Prep for 0.11 release r=Susurrus a=Susurrus
Co-authored-by: Bryant Mairs <bryantmairs@google.com>
|
|
909: Remove tests that weren't mine r=Susurrus a=Susurrus
cc @kristate
Co-authored-by: Bryant Mairs <bryantmairs@google.com>
|
|
|
|
|
|
|
|
907: Remove emulation of FD_CLOEXEC/O_NONBLOCK r=asomers a=Susurrus
Rather than using the native implementation of these constants
on supported platforms, the native implementation was instead
emulated. This was also hidden from the user even though this
could result in data races and the functionality being broken.
Native functionality is, however, not support on macos/ios.
Rather than enable this emulation solely for this platform, it
should be removed as this is a dangerous abstraction.
This is a replacement for #863. There is much previous discussion there which I recommend you read to familiarize yourself with this decision.
I'm looking to push this through rather quickly as it's the last thing blocking our next 0.11.0 release.
cc @aomser @kristate
Co-authored-by: Bryant Mairs <bryantmairs@google.com>
|
|
Rather than using the native implementation of these constants
on supported platforms, the native implementation was instead
emulated. This was also hidden from the user even though this
could result in data races and the functionality being broken.
Native functionality is, however, not support on macos/ios.
Rather than enable this emulation solely for this platform, it
should be removed as this is a dangerous abstraction.
|
|
901: Implement sendfile on FreeBSD and Darwin r=Susurrus a=morrowa
This PR exposes the `sendfile` system call on libc's supported BSD-likes:
* FreeBSD
* Darwin (macOS/iOS)
DragonFly could be supported in the future, but I was unable to build rustc to test.
Note that NetBSD has no equivalent system call.
Co-authored-by: Andrew Morrow <andrew.d.morrow@gmail.com>
|
|
|
|
906: Fix bind() on Android 64-bit r=Susurrus a=Susurrus
libc fixed `bind()` for Android 64-bit targets, so change our
code to match.
PRs are failing (like #901) so let's get this merged.
CC @asomers @morrowa
Co-authored-by: Bryant Mairs <bryantmairs@google.com>
|
|
libc fixed `bind()` for Android 64-bit targets, so change our
code to match.
|
|
904: Typo r=asomers a=bestouff
Co-authored-by: Xavier Bestel <xavier.bestel@free.fr>
|
|
|
|
893: Remove IFF_NOTRAILERS for openbsd r=asomers a=kpcyrd
nix currently doesn't compile on openbsd because `IFF_NOTRAILERS` isn't found. This PR fixes the openbsd build again (tested on 6.3). It seems it was changed in this commit:
https://github.com/openbsd/src/commit/beb8b0dd5985e55a615b52e593da6e75bab33f3f
Co-authored-by: kpcyrd <git@rxv.cc>
|
|
897: Add documentation to signal-handling functions r=Susurrus a=zombiezen
Co-authored-by: Ross Light <light@google.com>
|
|
|
|
IFF_NOTRAILERS has been removed in OpenBSD 6.3
https://github.com/openbsd/src/commit/beb8b0dd5985e55a615b52e593da6e75bab33f3f
|
|
880: Update changelog for #869 r=Susurrus a=Detegr
Updated changelog to contain #869
Co-authored-by: Antti Keränen <detegr@gmail.com>
|
|
|
|
892: Fixed ptrace::Request cfg conditions r=asomers a=dalance
The cfg condition of ptrace::Request seems to be different from libc.
For example, PTRACE_GETREGS is defined by libc to i686-unknown-linux-gnu target, but it is not defined in ptrace::Request.
I tried to change the cfg condition to the same as libc's condition.
I thinks this change covers the definitions under src/unix/notbsd directory in libc repository.
Co-authored-by: dalance <dalance@gmail.com>
|
|
|
|
894: Add pselect syscall r=asomers a=antifuchs
I saw that #276 was closed, and now I need `pselect`, so here it is! I copied the function body from @abbradar's work, updated the type signatures, added two tests and added a doc comment.
Hope this works!
Co-authored-by: Andreas Fuchs <asf@boinkor.net>
|
|
This is a straight port of @abbradar's work in #276, with
two (somewhat weak) tests and a bit of documentation.
|
|
887: Implement Debug trait for PollFd (Fixes #885) r=asomers a=kccqzy
This is useful when using printf-style debugging to observe the variables and
of the program.
This is discussed in issue #885.
Co-authored-by: Zhouyu Qian <qzy@qzy.io>
|
|
This is useful when using printf-style debugging to observe the variables of
the program.
Also includes a test.
Fixes #885.
|
|
883: Expose `preadv` and `pwritev` on BSDs r=asomers a=morrowa
This addresses issue #690.
It exposes the `preadv` and `pwritev` functions on supported BSDs (not including Apple platforms).
Co-authored-by: Andrew Morrow <andrew.d.morrow@gmail.com>
|
|
|
|
882: Update CHANGELOG for #833 r=Susurrus a=Susurrus
Forgot to mention the big changes in #833 before it was merged.
Co-authored-by: Bryant Mairs <bryantmairs@google.com>
|
|
|
|
833: Refactor the ioctl API and documentation r=posborne a=Susurrus
I still need to flesh out the docs for the different `ioctl_*!` variants that now exist. I separated them into different macros so they can have their own docs, which should help discoverability. And when macro namespacing comes around this will be a pretty neatly documented API I think (though we'll likely want to rename these macros again at that point).
* Split `ioctl!` into separate macros. This makes documentation easier to read.
* Expose `request_code_*!` in the documentation to make the `ioctl_*_bad` macros easier to use.
* Reorganize the file hierarchy to be simpler
cc @gabrielesvelto @posborne @jethrogb
Co-authored-by: Bryant Mairs <bryantmairs@google.com>
|
|
While usually `ioctl()` passes a pointer, the function call has been
overloaded to allow integers to be passed. For some platforms this
is an `int` and on others it's a `ulong`.
Fixes #824.
|
|
ioctls on FreeBSD and DragonflyBSD have a separate request code generation
macro `_IOWINT` which is now exposed as `request_code_write_int`.
`ioctl_write_int` is also fixed on these platforms to use this new request
|
|
* Split `ioctl!` into separate macros. This makes documentation easier to read.
* For every `ioctl_*!` macro include a description of the macro arguments as, the
function prototype for the generated wrapper function, and an example if we have one.
* Expose `request_code_*!` in the documentation to make the `ioctl_*_bad` macros easier to use.
* Reorganize the file hierarchy to be simpler
|
|
872: Change sys::aio::lio_listio to sys::aio::LioCb::listio r=asomers a=asomers
The new LioCb structure allows us to control the exact arguments passed
to lio_listio, guaranteeing that each call gets a unique storage
location for the list argument. This prevents clients from misusing
lio_listio in a way that causes events to get dropped from a kqueue
Fixes #870
|
|
It helps deal with errors like EAGAIN, which can result in a subset of
an LioCb's operations being queued. The test is only enabled on
FreeBSD, because it requires intimate knowledge of AIO system limits.
|
|
876: add mlockall and munlockall r=asomers a=afck
Closes #875
|
|
877: Replace the gcc crate by cc r=asomers a=Eijebong
|
|
|
|
|
|
|
|
857: Add chmod, fchmod, fchmodat functions r=asomers a=antage
|
|
|