From f522d8e7821c14e997dab8a584e0875f67d72472 Mon Sep 17 00:00:00 2001 From: fh Date: Sat, 27 Apr 2024 23:11:22 +0800 Subject: [PATCH] tuning embed docs --- Cargo.toml | 4 ++-- src/lib.rs | 7 +------ src/uau.rs | 18 +++++++++--------- 3 files changed, 12 insertions(+), 17 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 010a688..ac3b0b5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ruc" -version = "5.1.5" +version = "5.1.8" authors = ["hui.fan@mail.ru"] edition = "2021" description = "Rust Util Collections" @@ -25,7 +25,7 @@ rand = { version = "0.8", optional = true } base64 = {version = "0.21.2", optional = true } hex = {version = "0.4.3", optional = true } -nix = { version = "0.28", optional = true } +nix = { version = "0.28", features = ["socket"], optional = true } time = { version = "0.3", features = ["formatting"] } ssh2 = { version = "0.9.4", optional = true } diff --git a/src/lib.rs b/src/lib.rs index da6e84d..bafd91a 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,9 +1,4 @@ -//! -//! # RUC -//! -//! Useful util-collections for Rust. -//! - +#![doc = include_str!("../README.md")] #![deny(warnings)] #![deny(missing_docs)] diff --git a/src/uau.rs b/src/uau.rs index fd93cc6..438f475 100644 --- a/src/uau.rs +++ b/src/uau.rs @@ -28,17 +28,17 @@ use nix::{ }, unistd::close, }; -use std::os::unix::io::RawFd; +use std::os::{fd::OwnedFd, unix::io::AsRawFd}; /// Wrap raw data pub struct UauSock { - fd: RawFd, + fd: OwnedFd, sa: UnixAddr, } impl Drop for UauSock { fn drop(&mut self) { - info_omit!(close(self.fd)); + info_omit!(close(self.fd.as_raw_fd())); } } @@ -58,11 +58,11 @@ impl UauSock { ) .c(d!())?; - setsockopt(fd, sockopt::ReuseAddr, &true).c(d!())?; - setsockopt(fd, sockopt::ReusePort, &true).c(d!())?; + setsockopt(&fd, sockopt::ReuseAddr, &true).c(d!())?; + setsockopt(&fd, sockopt::ReusePort, &true).c(d!())?; if let Some(to) = recv_timeout { setsockopt( - fd, + &fd, sockopt::ReceiveTimeout, &TimeVal::milliseconds(to), ) @@ -70,7 +70,7 @@ impl UauSock { } let sa = UnixAddr::new_abstract(addr).c(d!())?; - bind(fd, &sa).c(d!())?; + bind(fd.as_raw_fd(), &sa).c(d!())?; Ok(UauSock { fd, sa }) } @@ -91,7 +91,7 @@ impl UauSock { /// Send msg to another peer #[inline(always)] pub fn send(&self, msg: &[u8], peeraddr: &UnixAddr) -> Result<()> { - sendto(self.fd, msg, peeraddr, MsgFlags::empty()) + sendto(self.fd.as_raw_fd(), msg, peeraddr, MsgFlags::empty()) .c(d!()) .map(|_| ()) } @@ -174,7 +174,7 @@ impl UauSock { /// Receive msg with a given buffer #[inline(always)] pub fn recv(&self, buf: &mut [u8]) -> Result<(usize, UnixAddr)> { - match recvfrom::(self.fd, buf) { + match recvfrom::(self.fd.as_raw_fd(), buf) { Ok((n, Some(peer))) => Ok((n, peer)), Err(e) => Err(eg!(e)), _ => Err(eg!("peer address is unknown")),