diff options
-rw-r--r-- | Cargo.toml | 2 | ||||
-rw-r--r-- | src/sys/mod.rs | 1 | ||||
-rw-r--r-- | src/sys/uio.rs | 8 |
3 files changed, 7 insertions, 4 deletions
@@ -16,6 +16,8 @@ exclude = [ [features] eventfd = [] execvpe = [] +preadv_pwritev = [] +signalfd = [] [dependencies] libc = "0.1.10" diff --git a/src/sys/mod.rs b/src/sys/mod.rs index 61c8d688..aee1257d 100644 --- a/src/sys/mod.rs +++ b/src/sys/mod.rs @@ -18,6 +18,7 @@ pub mod ioctl; pub mod signal; #[cfg(any(target_os = "linux", target_os = "android"))] +#[cfg(feature = "signalfd")] pub mod signalfd; pub mod socket; diff --git a/src/sys/uio.rs b/src/sys/uio.rs index bb944641..b43ede3c 100644 --- a/src/sys/uio.rs +++ b/src/sys/uio.rs @@ -23,13 +23,13 @@ mod ffi { // vectorized write at a specified offset // doc: http://man7.org/linux/man-pages/man2/pwritev.2.html - #[cfg(target_os = "linux")] + #[cfg(feature = "preadv_pwritev")] pub fn pwritev(fd: RawFd, iov: *const IoVec<&[u8]>, iovcnt: c_int, offset: off_t) -> ssize_t; // vectorized read at a specified offset // doc: http://man7.org/linux/man-pages/man2/preadv.2.html - #[cfg(target_os = "linux")] + #[cfg(feature = "preadv_pwritev")] pub fn preadv(fd: RawFd, iov: *const IoVec<&mut [u8]>, iovcnt: c_int, offset: off_t) -> ssize_t; @@ -64,7 +64,7 @@ pub fn readv(fd: RawFd, iov: &mut [IoVec<&mut [u8]>]) -> Result<usize> { return Ok(res as usize) } -#[cfg(target_os = "linux")] +#[cfg(feature = "preadv_pwritev")] pub fn pwritev(fd: RawFd, iov: &[IoVec<&[u8]>], offset: off_t) -> Result<usize> { let res = unsafe { @@ -77,7 +77,7 @@ pub fn pwritev(fd: RawFd, iov: &[IoVec<&[u8]>], } } -#[cfg(target_os = "linux")] +#[cfg(feature = "preadv_pwritev")] pub fn preadv(fd: RawFd, iov: &mut [IoVec<&mut [u8]>], offset: off_t) -> Result<usize> { let res = unsafe { |