summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-01-18Fix name of MNT_DETACH flagKamal Marhubi
2016-01-18setnsarcnmx
2016-01-15add aarch64 supportBrian Martin
2016-01-13Use tempdir for temporary files in testsKamal Marhubi
2016-01-13Add safe wrappers for getuid, geteuid, getgid, getegidKamal Marhubi
Fixes #213
2016-01-13Fix compiler warnings in testsKamal Marhubi
2015-12-22Fix build on Linux & Rust nightlyCarl Lerche
2015-12-22Fix broken tests on nightlyCarl Lerche
2015-12-22add NSIG constantPhilipp Matthias Schaefer
glibc defines this constant as "the total number of signals defined. Since the signal numbers are allocated consecutively, NSIG is also one greater than the largest defined signal number."
2015-12-22Implement support for getsockopt of peer credentials using the Linux ↵Magnus Hoff
specific SO_PEERCRED
2015-12-22Bump version to 0.5.0-preCarl Lerche
2015-12-04socket(): add protocol argument (breaking change)Alexander Polakov
2015-12-03Bump version to v0.4.2Carl Lerche
2015-12-03add function for handling PTRACE_SETOPTIONS nicelyDavid Roundy
2015-12-03add an implementation of setpgidDavid Roundy
2015-12-03support more flags to waitpid and wait on linuxDavid Roundy
2015-12-03NetBSD tweaks for kqueue supportZachary Tong
2015-12-03Statvfs improvementsBrandon W Maister
* Implement `Default` * Add documentation * Add some convenience wrappers
2015-11-20netbsd supportJeremy Fitzhardinge
2015-11-03Bump libc to 0.1.12.Utkarsh Kukreti
2015-11-03Use `libc::PATH_MAX` in `NixPath::with_nix_path`.Utkarsh Kukreti
2015-10-28Fix handling of sockaddr_un lengthsGeoffrey Thomas
The returned length of AF_UNIX sockaddrs is significant, and generally does not match the length of the entire structure. For filesystem sockets, this is ignorable because the path is also NUL-terminated, but for unbound sockets (e.g., a socketpair) or abstract-namespace sockets (a Linux extension where the address is an arbitrary bytestring), we need to keep track of the length. Fixes #177. Also add a UnixAddr::new_abstract function and some better handling of abstract-namespace socket addresses to fix #169.
2015-10-27Improve Error interoperability with stdJeremy Fitzhardinge
- Add From implementaion for io::Error, so nix::Error can be turned into a std::io::Error. - Add From from Errno - a little more idiomatic than from_errno these days - Implement std::error::Error for nix::Error
2015-10-27Add support for fsync, fdatasyncJeremy Fitzhardinge
2015-10-27Fix some commentsJeremy Fitzhardinge
2015-10-20Only run signalfd tests when feature is setCarl Lerche
2015-10-20Scope test by signalfdCarl Lerche
2015-10-20Move a few bindings behind featuresCarl Lerche
2015-10-16Fix memory issue with exec family of fnsCarl Lerche
2015-10-07Add sys::select::FdSet::clear.Utkarsh Kukreti
2015-10-06Add support for sendmsg(2), recvmsg(2), and cmsg(3)Geoffrey Thomas
The best specification for control message layout appears to be [RFC 2292, section 4](https://tools.ietf.org/html/rfc2292#section-4), despite this not being a wire protocol. These definitions have also been checked against glibc 2.19 <bits/socket.h> and Linux 4.0 <linux/socket.h>, and tested on Debian 8.1 and FreeBSD 10.2 x86_64. The API differs a bit from the cmsg(3) API for type-safety reasons (and also because the cmsg(3) API is terrible). See test/sys/test_socket.rs for an example. Only supports SCM_RIGHTS at the moment. Fixes #88.
2015-09-30Bump version to v0.4.1Carl Lerche
2015-09-28statfs() & fstatfs()Alexander Polakov
2015-09-28sys/event: add kevent_ts to better expose kevent timeoutLuca Barbieri
This allows to specify no timeout and allows to specify any timespec timeout.
2015-09-28added convenience functions for setting O_NONBLOCK on message queuesMarkus Jais
2015-09-28quotactl() API for linuxAlexander Polakov
2015-09-28Revert "Add support for sendmsg(2), recvmsg(2), and cmsg(4)"Carl Lerche
This reverts commit 046af7d1ba82506f9bc48e62ac0584361025fc02.
2015-09-28Add sys::select::FdSet and sys::select::select.Utkarsh Kukreti
2015-09-24Bump .travis.yml to Rust 1.1.0Geoffrey Thomas
2015-09-24Add support for sendmsg(2), recvmsg(2), and cmsg(4)Geoffrey Thomas
The best specification for control message layout appears to be [RFC 2292, section 4](https://tools.ietf.org/html/rfc2292#section-4), despite this not being a wire protocol. These definitions have also been checked against glibc 2.19 <bits/socket.h> and Linux 4.0 <linux/socket.h>, and tested on Debian 8.1 and FreeBSD 10.2 x86_64. The API differs a bit from the cmsg(4) API for type-safety reasons (and also because the cmsg(4) API is terrible). See test/sys/test_socket.rs for an example. Only supports SCM_RIGHTS at the moment. Fixes #88.
2015-09-15ioctl: only run ioctl doctest under linuxPaul Osborne
2015-09-15ioctl: correct documentation and add example ioctl! codePaul Osborne
2015-09-15ioctl: make ioctl functions publicPaul Osborne
Consumers of the API may control visibility by means of a module. The following is a useful pattern that may be used by implementors (here for a couple of i2cdev ioctl definitions): mod ioctl { ioctl!(bad set_i2c_slave_address with super::I2C_SLAVE); ioctl!(bad i2c_smbus with super::I2C_SMBUS); } This resolves #184.
2015-09-15ioctl: clean up source file for ioctlsPaul Osborne
Readability was unecessarily impaired via a myriad of attributes to hide constants from the documentation. If these attributes are exposed publically, including them in the documentation makes sense.
2015-09-10Add signalfd supportAlex Gulyás
2015-09-09Add/Fix support for DragonFly BSDMichael Neumann
2015-09-03added support and tests for mq_setattrMarkus Jais
2015-09-03test_stat: Remove st_rdev testGeoffrey Thomas
On FreeBSD, st_rdev seems to be set to a unique value (correlated with, but not identical to, st_ino) per file. Neither the FreeBSD nor Linux man page makes any promises on st_rdev for regular files; useful test coverage of st_rdev would check it on a special file. All tests now pass on FreeBSD.
2015-09-03Fix test failures on FreeBSDGeoffrey Thomas
2015-09-03Make tests compile on FreeBSDGeoffrey Thomas
Add <sys/types.h>, which GNU is generally lenient about requiring, and drop the spurious errno "ETYPE" which is nowhere to be seen in the source tree (or in Apple's <errno.h>, either).