summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-12-08Merge #807bors[bot]
807: Switch to libc definitons of errno constants r=Susurrus a=Susurrus Still need to do OpenBSD and NetBSD. Primary goal with this first pass is to see what doesn't exist properly in `libc`. Closes #487.
2017-12-08Merge #777bors[bot]
777: Use the real pipe2(2) on most targets r=asomers a=asomers FreeBSD added pipe2(2) in version 10.0.
2017-12-07Use the real pipe2(2) on all BSD targets.Alan Somers
All supported non-Apple platforms now use the native syscall. Only ios and macos lack it. Deprecate pipe2 on those platforms, because it's impossible to guarantee atomicity with a userland implementation. It was added in: * DragonflyBSD 4.2 * FreeBSD 10.0 * NetBSD 6.0 * OpenBSD 5.7
2017-12-05Derive Eq for ErrnoBryant Mairs
2017-12-05Remove redundant constant testsBryant Mairs
Now that these constants are verified within libc, these tests are no longer necessary.
2017-12-05Remove nix-test subcrateBryant Mairs
This was doing testing for errno constants and a few other types that is no longer necessary now that these types are all tested within the libc project itself.
2017-12-05Switch to libc definitons of errno constantsBryant Mairs
2017-12-05Merge #696bors[bot]
696: Stop reexporting `Errno` variants r=Susurrus a=jonas-schievink Closes #664 (unsure if this is everything needed)
2017-12-04Stop reexporting `Errno` and its variantsJonas Schievink
cc #664 (unsure if this is everything needed)
2017-12-04Merge #667bors[bot]
667: Add support for getifaddrs. r=asomers a=mwanner Here's a first attempt at a rustian interface for `getifaddrs`, please review. Changes for the changelog: - Added `nix::ifaddrs::{getifaddrs, InterfaceAddressIterator, InterfaceAddress and InterfaceFlags}` Closes #650. Closes #764.
2017-12-03Add support for getifaddrs. Closes: #650.Markus Wanner
2017-12-03Merge #801bors[bot]
801: Upgrade to Bitflags 1.0 r=asomers a=Susurrus The libc_bitflags! macro was replaced with a non-recursive one supporting only public structs. I could not figure out how to make the old macro work with the upgrade, so I reworked part of the bitflags! macro directly to suit our needs, much as the original recursive macro was made. There are no uses of this macro for non-public structs, so this is not a problem for internal code. Closes #766.
2017-12-02Upgrade to Bitflags 1.0Bryant Mairs
The libc_bitflags! macro was replaced with a non-recursive one supporting only public structs. I could not figure out how to make the old macro work with the upgrade, so I reworked part of the bitflags! macro directly to suit our needs, much as the original recursive macro was made. There are no uses of this macro for non-public structs, so this is not a problem for internal code.
2017-12-02Merge #805bors[bot]
805: Fix epoll bug in release mode on Rust 1.20+ r=Susurrus a=Susurrus Seems to have occurred within a Rust release after 1.13, so let's test all of them since then!
2017-12-01Test with hard-fails on stable alsoBryant Mairs
2017-12-01Fix UB in epoll_ctlBryant Mairs
When passing None as an argument to `epoll_ctl`, UB is elicited within the `Into<&EpollEvent>` impl because it passes a null pointer as a `&mut EpollEvent`. Instead we remove that implementation completely and handle this case directly within the `epoll_ctl` function. Thanks to Arnavion for helping to debug this.
2017-12-01Merge #804bors[bot]
804: bump lazy_static to 1 r=Susurrus a=ignatenkobrain
2017-12-01bump lazy_static to 1Igor Gnatenko
2017-11-21Merge #800bors[bot]
800: unistd: add execveat() on Linux and Android r=Susurrus a=lucab This adds execveat() to `nix::unistd`. It uses the execveat(2) Linux kernel syscall, which is available since 3.19. This is a Linux-specific extension which is not covered by POSIX and does not have any userland libc wrapper. Ref: http://man7.org/linux/man-pages/man2/execveat.2.html
2017-11-19unistd: add execveat() on Linux and AndroidLuca Bruno
This adds execveat() to `nix::unistd`. It uses the execveat(2) Linux kernel syscall, which is available since 3.19. This is a Linux-specific extension which is not covered by POSIX and does not have any userland libc wrapper. Ref: http://man7.org/linux/man-pages/man2/execveat.2.html
2017-11-19Merge #785bors[bot]
785: sys/socket: add UnixAddr abstract name getter r=asomers a=lucab This introduces an `as_abstract()` getter to `UnixAddr` in order to retrieve the name of an abstract unix socket. This also adds tests around abstract addresses and clarify docs, adding explicit semantics.
2017-11-19sys/socket: add UnixAddr abstract name getterLuca Bruno
This introduces an `as_abstract()` getter to `UnixAddr` in order to retrieve the name of an abstract unix socket. This also adds tests around abstract addresses and clarify docs, adding explicit semantics.
2017-11-18Merge #798bors[bot]
798: More libc ffi r=Susurrus a=Susurrus Blocking on rust-lang/libc#850 for Android support.
2017-11-16Use libc function declarations for errno gettersBryant Mairs
2017-11-16Remove bitrig #[cfgsBryant Mairs
Bitrig is in the process of re-merging with OpenBSD as is no longer actively developed. Additionally it was never tested, and probably was quite broken, for nix. So let's remove all references and not even pretend to support it.
2017-11-14Merge #797bors[bot]
797: Remove deploy.sh r=asomers a=Susurrus This script is a remnant from when generating docs was part of the publishing process. With docs.rs generating docs for all packages, this is no longer necessary. Additionally this script has been incorrect for a long time since nix moved from carllerche/nix to nix-rust/nix.
2017-11-13Remove deploy.shBryant Mairs
This script is a remnant from when generating docs was part of the publishing process. With docs.rs generating docs for all packages, this is no longer necessary. Additionally this script has been incorrect for a long time since nix moved from carllerche/nix to nix-rust/nix.
2017-11-13Merge #795bors[bot]
795: Use sh as interpreter r=asomers a=dereckson No bash-specific feature is used, so deploy script will work in every POSIX OS, even when bash isn't installed.
2017-11-13Use sh as interpreterSébastien Santoro
No bash-specific feature is used, so deploy script will work in every POSIX OS, even when bash isn't installed.
2017-11-12Merge #733bors[bot]
733: unistd: Add getgroups, setgroups, getgrouplist, initgroups r=Susurrus a=JayH5
2017-11-12unistd: Rework import of std::ptrJamie Hewland
2017-11-12unistd: groups: Disable functions on Apple platformsJamie Hewland
2017-11-12unistd: groups: Respond to minor PR feedback itemsJamie Hewland
2017-11-12unistd: Make getgrouplist and initgroups take &CStrJamie Hewland
Don't need to call as_c_str()
2017-11-12groups tests: Add groups mutex and print message when tests skippedJamie Hewland
Fix groups mutex name
2017-11-12Add changelog entry for #733Jamie Hewland
2017-11-12test_unistd: Add test for getgrouplist/initgroups()Jamie Hewland
2017-11-12unistd: Add getgrouplist()Jamie Hewland
2017-11-12unistd: Add initgroups()Jamie Hewland
2017-11-12test_unistd: Add test for getgroups/setgroups()Jamie Hewland
2017-11-12unistd: Add getgroups()Jamie Hewland
2017-11-12unistd: Add setgroups()Jamie Hewland
2017-11-12unistd: Remove trailing whitespaceJamie Hewland
2017-11-11Merge #568bors[bot]
568: Add process_vm_readv and process_vm_writev r=asomers a=geofft
2017-11-11Merge #787bors[bot]
787: Omit invalid waitpid flags on OpenBSD r=Susurrus a=worr OpenBSD doesn't have `WEXITED`, `WSTOPPED`, or `WNOWAIT`, so omit those from that platform.
2017-11-11Formatting with rustfmtWilliam Orr
2017-11-11Omit invalid waitpid flags on OpenBSDWilliam Orr
OpenBSD doesn't have `WEXITED`, `WSTOPPED`, or `WNOWAIT`, so omit those from that platform.
2017-11-11Merge #792bors[bot]
792: Use libc_enum! where possible r=Susurrus a=wginolas Some enums which use different names for values than libc still set the discriminators manually. closes #254
2017-11-11Alphabetize some target_os configurationsWolfgang Ginolas
2017-11-08Add process_vm_readv and process_vm_writevGeoffrey Thomas