summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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).
2015-09-03Fix the struct packing of EpollEventAlex Gulyás
2015-08-25Add memfd functionalityDavid Henningsson
2015-08-22Fix signature of linux `clone` functionPaul Colomiets
In fact function returns pid of new process (or tid of new thread)
2015-08-21Merge remote-tracking branch 'posborne/ioctl-rework'Carl Lerche
2015-08-17renamed test methods for mqueue and added mq_unlinkMarkus Jais
2015-08-15Add flock(2) supportAndy Grover
2015-08-14ioctl: fix bugs with op generation for writesPaul Osborne
These had ior! rather than iow! previously. ior! is obviously not correct for write operations.
2015-08-14ioctl: do not make macro generated functions publicPaul Osborne
if code incorporating these macros wants to publicly export the functions they may do so by doing the following: pub ioctl!(...); Since the functions are unsafe, in many cases exposing the functions publicly will not be desirable.
2015-08-12ioctl: remove defunct readme for ioctl subsystemPaul Osborne
2015-08-12ioctl: return result type rather than raw integerPaul Osborne
This change also adds macro usages in the tests. Nothing is asserted but the use of the macros provides a basic compile-time check that is otherwise missing. Signed-off-by: Paul Osborne <osbpau@gmail.com>
2015-08-12ioctl: reintroduce libc ioctl workaround until we can use updated liblibcPaul Osborne
This PR fixes the issue upstream https://github.com/rust-lang/rust/pull/26809 but no version 0.2.0 of the crate has been published as of yet. Signed-off-by: Paul Osborne <osbpau@gmail.com>
2015-08-12ioctl: remove all but command encodingCorey Richardson
2015-08-12Merge mips into powerpc; rename Union_Unnamed16 to ff_effect_dataCorey Richardson
2015-08-12conditionally enable ioctl test for linuxCorey Richardson