| diff --git a/Cargo.toml b/Cargo.toml |
| index 6728a901..5291a632 100644 |
| --- a/Cargo.toml |
| +++ b/Cargo.toml |
| @@ -208,7 +208,7 @@ optional = true |
| version = "0.2.149" |
| |
| [target."cfg(unix)".dev-dependencies.nix] |
| -version = "0.27.1" |
| +version = "0.28.0" |
| features = [ |
| "fs", |
| "socket", |
| diff --git a/Cargo.toml.orig b/Cargo.toml.orig |
| index 069bb130..91fc4261 100644 |
| --- a/Cargo.toml.orig |
| +++ b/Cargo.toml.orig |
| @@ -123,7 +123,7 @@ signal-hook-registry = { version = "1.1.1", optional = true } |
| |
| [target.'cfg(unix)'.dev-dependencies] |
| libc = { version = "0.2.149" } |
| -nix = { version = "0.27.1", default-features = false, features = ["fs", "socket"] } |
| +nix = { version = "0.28.0", default-features = false, features = ["fs", "socket"] } |
| |
| [target.'cfg(windows)'.dependencies.windows-sys] |
| version = "0.48" |
| diff --git a/tests/io_async_fd.rs b/tests/io_async_fd.rs |
| index 49b5a683..aca25462 100644 |
| --- a/tests/io_async_fd.rs |
| +++ b/tests/io_async_fd.rs |
| @@ -1,7 +1,7 @@ |
| #![warn(rust_2018_idioms)] |
| #![cfg(all(unix, feature = "full"))] |
| |
| -use std::os::unix::io::{AsRawFd, IntoRawFd, RawFd}; |
| +use std::os::unix::io::{AsRawFd, RawFd}; |
| use std::sync::{ |
| atomic::{AtomicBool, Ordering}, |
| Arc, |
| @@ -13,7 +13,7 @@ use std::{ |
| task::{Context, Waker}, |
| }; |
| |
| -use nix::unistd::{close, read, write}; |
| +use nix::unistd::{read, write}; |
| |
| use futures::poll; |
| |
| @@ -57,18 +57,18 @@ impl TestWaker { |
| |
| #[derive(Debug)] |
| struct FileDescriptor { |
| - fd: RawFd, |
| + fd: std::os::fd::OwnedFd, |
| } |
| |
| impl AsRawFd for FileDescriptor { |
| fn as_raw_fd(&self) -> RawFd { |
| - self.fd |
| + self.fd.as_raw_fd() |
| } |
| } |
| |
| impl Read for &FileDescriptor { |
| fn read(&mut self, buf: &mut [u8]) -> io::Result<usize> { |
| - read(self.fd, buf).map_err(io::Error::from) |
| + read(self.fd.as_raw_fd(), buf).map_err(io::Error::from) |
| } |
| } |
| |
| @@ -80,7 +80,7 @@ impl Read for FileDescriptor { |
| |
| impl Write for &FileDescriptor { |
| fn write(&mut self, buf: &[u8]) -> io::Result<usize> { |
| - write(self.fd, buf).map_err(io::Error::from) |
| + write(&self.fd, buf).map_err(io::Error::from) |
| } |
| |
| fn flush(&mut self) -> io::Result<()> { |
| @@ -98,12 +98,6 @@ impl Write for FileDescriptor { |
| } |
| } |
| |
| -impl Drop for FileDescriptor { |
| - fn drop(&mut self) { |
| - let _ = close(self.fd); |
| - } |
| -} |
| - |
| fn set_nonblocking(fd: RawFd) { |
| use nix::fcntl::{OFlag, F_GETFL, F_SETFL}; |
| |
| @@ -132,17 +126,10 @@ fn socketpair() -> (FileDescriptor, FileDescriptor) { |
| SockFlag::empty(), |
| ) |
| .expect("socketpair"); |
| - let fds = ( |
| - FileDescriptor { |
| - fd: fd_a.into_raw_fd(), |
| - }, |
| - FileDescriptor { |
| - fd: fd_b.into_raw_fd(), |
| - }, |
| - ); |
| + let fds = (FileDescriptor { fd: fd_a }, FileDescriptor { fd: fd_b }); |
| |
| - set_nonblocking(fds.0.fd); |
| - set_nonblocking(fds.1.fd); |
| + set_nonblocking(fds.0.fd.as_raw_fd()); |
| + set_nonblocking(fds.1.fd.as_raw_fd()); |
| |
| fds |
| } |