fix clippy
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Alex 2023-01-31 23:57:33 +01:00
parent e4c0be848d
commit 6df6411b72
7 changed files with 50 additions and 39 deletions

View file

@ -72,7 +72,7 @@ async fn main() {
}; };
info!("Node private key: {}", hex::encode(&privkey)); info!("Node private key: {}", hex::encode(&privkey));
info!("Node public key: {}", hex::encode(&privkey.public_key())); info!("Node public key: {}", hex::encode(privkey.public_key()));
let public_addr = opt.public_addr.map(|x| x.parse().unwrap()); let public_addr = opt.public_addr.map(|x| x.parse().unwrap());
let listen_addr: SocketAddr = opt.listen_addr.parse().unwrap(); let listen_addr: SocketAddr = opt.listen_addr.parse().unwrap();
@ -94,7 +94,7 @@ async fn main() {
info!("Add more peers to this mesh by running: fullmesh -n {} -l 127.0.0.1:$((1000 + $RANDOM)) -b {}@{}", info!("Add more peers to this mesh by running: fullmesh -n {} -l 127.0.0.1:$((1000 + $RANDOM)) -b {}@{}",
hex::encode(&netid), hex::encode(&netid),
hex::encode(&privkey.public_key()), hex::encode(privkey.public_key()),
listen_addr); listen_addr);
let watch_cancel = netapp::util::watch_ctrl_c(); let watch_cancel = netapp::util::watch_ctrl_c();

View file

@ -1,3 +1,4 @@
use std::cmp::Ordering;
use std::collections::VecDeque; use std::collections::VecDeque;
use bytes::BytesMut; use bytes::BytesMut;
@ -44,7 +45,7 @@ impl BytesBuf {
/// Takes the whole content of the buffer and returns it as a single Bytes unit /// Takes the whole content of the buffer and returns it as a single Bytes unit
pub fn take_all(&mut self) -> Bytes { pub fn take_all(&mut self) -> Bytes {
if self.buf.len() == 0 { if self.buf.is_empty() {
Bytes::new() Bytes::new()
} else if self.buf.len() == 1 { } else if self.buf.len() == 1 {
self.buf_len = 0; self.buf_len = 0;
@ -82,14 +83,17 @@ impl BytesBuf {
fn take_exact_ok(&mut self, len: usize) -> Bytes { fn take_exact_ok(&mut self, len: usize) -> Bytes {
assert!(len <= self.buf_len); assert!(len <= self.buf_len);
let front = self.buf.pop_front().unwrap(); let front = self.buf.pop_front().unwrap();
if front.len() > len { match front.len().cmp(&len) {
Ordering::Greater => {
self.buf.push_front(front.slice(len..)); self.buf.push_front(front.slice(len..));
self.buf_len -= len; self.buf_len -= len;
front.slice(..len) front.slice(..len)
} else if front.len() == len { }
Ordering::Equal => {
self.buf_len -= len; self.buf_len -= len;
front front
} else { }
Ordering::Less => {
let mut ret = BytesMut::with_capacity(len); let mut ret = BytesMut::with_capacity(len);
ret.extend_from_slice(&front[..]); ret.extend_from_slice(&front[..]);
self.buf_len -= front.len(); self.buf_len -= front.len();
@ -109,6 +113,7 @@ impl BytesBuf {
ret.freeze() ret.freeze()
} }
} }
}
/// Return the internal sequence of Bytes slices that make up the buffer /// Return the internal sequence of Bytes slices that make up the buffer
pub fn into_slices(self) -> VecDeque<Bytes> { pub fn into_slices(self) -> VecDeque<Bytes> {
@ -116,6 +121,12 @@ impl BytesBuf {
} }
} }
impl Default for BytesBuf {
fn default() -> Self {
Self::new()
}
}
impl From<Bytes> for BytesBuf { impl From<Bytes> for BytesBuf {
fn from(b: Bytes) -> BytesBuf { fn from(b: Bytes) -> BytesBuf {
let mut ret = BytesBuf::new(); let mut ret = BytesBuf::new();

View file

@ -65,7 +65,7 @@ impl ClientConn {
debug!( debug!(
"Handshake complete (client) with {}@{}", "Handshake complete (client) with {}@{}",
hex::encode(&peer_id), hex::encode(peer_id),
remote_addr remote_addr
); );
@ -250,7 +250,7 @@ impl CancelOnDrop {
fn for_stream(self, stream: ByteStream) -> CancelOnDropStream { fn for_stream(self, stream: ByteStream) -> CancelOnDropStream {
CancelOnDropStream { CancelOnDropStream {
cancel: Some(self), cancel: Some(self),
stream: stream, stream,
} }
} }
} }

View file

@ -113,7 +113,7 @@ impl PeerInfo {
/// PeerConnState: possible states for our tentative connections to given peer /// PeerConnState: possible states for our tentative connections to given peer
/// This structure is only interested in recording connection info for outgoing /// This structure is only interested in recording connection info for outgoing
/// TCP connections /// TCP connections
#[derive(Copy, Clone, Debug, PartialEq)] #[derive(Copy, Clone, Debug, PartialEq, Eq)]
pub enum PeerConnState { pub enum PeerConnState {
/// This entry represents ourself (the local node) /// This entry represents ourself (the local node)
Ourself, Ourself,

View file

@ -79,7 +79,7 @@ impl ServerConn {
debug!( debug!(
"Handshake complete (server) with {}@{}", "Handshake complete (server) with {}@{}",
hex::encode(&peer_id), hex::encode(peer_id),
remote_addr remote_addr
); );

View file

@ -62,7 +62,7 @@ pub fn watch_ctrl_c() -> watch::Receiver<bool> {
pub fn parse_peer_addr(peer: &str) -> Option<(NodeID, SocketAddr)> { pub fn parse_peer_addr(peer: &str) -> Option<(NodeID, SocketAddr)> {
let delim = peer.find('@')?; let delim = peer.find('@')?;
let (key, ip) = peer.split_at(delim); let (key, ip) = peer.split_at(delim);
let pubkey = NodeID::from_slice(&hex::decode(&key).ok()?)?; let pubkey = NodeID::from_slice(&hex::decode(key).ok()?)?;
let ip = ip[1..].parse::<SocketAddr>().ok()?; let ip = ip[1..].parse::<SocketAddr>().ok()?;
Some((pubkey, ip)) Some((pubkey, ip))
} }
@ -74,7 +74,7 @@ pub fn parse_and_resolve_peer_addr(peer: &str) -> Option<(NodeID, Vec<SocketAddr
let delim = peer.find('@')?; let delim = peer.find('@')?;
let (key, host) = peer.split_at(delim); let (key, host) = peer.split_at(delim);
let pubkey = NodeID::from_slice(&hex::decode(&key).ok()?)?; let pubkey = NodeID::from_slice(&hex::decode(key).ok()?)?;
let hosts = host[1..].to_socket_addrs().ok()?.collect::<Vec<_>>(); let hosts = host[1..].to_socket_addrs().ok()?.collect::<Vec<_>>();
if hosts.is_empty() { if hosts.is_empty() {
return None; return None;
@ -86,7 +86,7 @@ pub fn parse_and_resolve_peer_addr(peer: &str) -> Option<(NodeID, Vec<SocketAddr
pub async fn parse_and_resolve_peer_addr_async(peer: &str) -> Option<(NodeID, Vec<SocketAddr>)> { pub async fn parse_and_resolve_peer_addr_async(peer: &str) -> Option<(NodeID, Vec<SocketAddr>)> {
let delim = peer.find('@')?; let delim = peer.find('@')?;
let (key, host) = peer.split_at(delim); let (key, host) = peer.split_at(delim);
let pubkey = NodeID::from_slice(&hex::decode(&key).ok()?)?; let pubkey = NodeID::from_slice(&hex::decode(key).ok()?)?;
let hosts = tokio::net::lookup_host(&host[1..]) let hosts = tokio::net::lookup_host(&host[1..])
.await .await
.ok()? .ok()?