mirror of https://github.com/dswd/vpncloud.git
Clippy
This commit is contained in:
parent
706d205ff1
commit
f2e6a1ef7b
|
@ -31,7 +31,7 @@ fn base_62_sanitize(data: &str) -> String {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn sha512(data: &[u8]) -> Vec<u8> {
|
fn sha512(data: &[u8]) -> Vec<u8> {
|
||||||
digest::digest(&digest::SHA512, data).as_ref().iter().map(|b| *b).collect()
|
digest::digest(&digest::SHA512, data).as_ref().to_vec()
|
||||||
}
|
}
|
||||||
|
|
||||||
struct FutureResult<T> {
|
struct FutureResult<T> {
|
||||||
|
@ -72,6 +72,7 @@ impl<TS: TimeSource> BeaconSerializer<TS> {
|
||||||
sha512(&data)
|
sha512(&data)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[allow(clippy::needless_range_loop)]
|
||||||
fn mask_with_keystream(&self, data: &mut [u8], type_: u8, seed: u8) {
|
fn mask_with_keystream(&self, data: &mut [u8], type_: u8, seed: u8) {
|
||||||
let mut iter = 0;
|
let mut iter = 0;
|
||||||
let mut mask = self.get_keystream(type_, seed, iter);
|
let mut mask = self.get_keystream(type_, seed, iter);
|
||||||
|
|
|
@ -143,7 +143,7 @@ impl<TS: TimeSource> PeerList<TS> {
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
pub fn get_node_id(&self, addr: &SocketAddr) -> Option<NodeId> {
|
pub fn get_node_id(&self, addr: &SocketAddr) -> Option<NodeId> {
|
||||||
self.addresses.get(addr).map(|n| *n)
|
self.addresses.get(addr).cloned()
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
|
@ -230,6 +230,7 @@ pub struct GenericCloud<D: Device, P: Protocol, T: Table, S: Socket, TS: TimeSou
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<D: Device, P: Protocol, T: Table, S: Socket, TS: TimeSource> GenericCloud<D, P, T, S, TS> {
|
impl<D: Device, P: Protocol, T: Table, S: Socket, TS: TimeSource> GenericCloud<D, P, T, S, TS> {
|
||||||
|
#[allow(clippy::too_many_arguments)]
|
||||||
pub fn new(config: &Config, device: D, table: T,
|
pub fn new(config: &Config, device: D, table: T,
|
||||||
learning: bool, broadcast: bool, addresses: Vec<Range>,
|
learning: bool, broadcast: bool, addresses: Vec<Range>,
|
||||||
crypto: Crypto, port_forwarding: Option<PortForwarding>
|
crypto: Crypto, port_forwarding: Option<PortForwarding>
|
||||||
|
@ -271,7 +272,7 @@ impl<D: Device, P: Protocol, T: Table, S: Socket, TS: TimeSource> GenericCloud<D
|
||||||
_dummy_ts: PhantomData
|
_dummy_ts: PhantomData
|
||||||
};
|
};
|
||||||
res.initialize();
|
res.initialize();
|
||||||
return res
|
res
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
|
@ -292,7 +293,7 @@ impl<D: Device, P: Protocol, T: Table, S: Socket, TS: TimeSource> GenericCloud<D
|
||||||
let msg_data = encode(msg, &mut self.buffer_out, self.magic, &mut self.crypto);
|
let msg_data = encode(msg, &mut self.buffer_out, self.magic, &mut self.crypto);
|
||||||
for addr in self.peers.peers.keys() {
|
for addr in self.peers.peers.keys() {
|
||||||
self.traffic.count_out_traffic(*addr, msg_data.len());
|
self.traffic.count_out_traffic(*addr, msg_data.len());
|
||||||
let mut socket = match *addr {
|
let socket = match *addr {
|
||||||
SocketAddr::V4(_) => &mut self.socket4,
|
SocketAddr::V4(_) => &mut self.socket4,
|
||||||
SocketAddr::V6(_) => &mut self.socket6
|
SocketAddr::V6(_) => &mut self.socket6
|
||||||
};
|
};
|
||||||
|
@ -715,7 +716,7 @@ impl<D: Device, P: Protocol, T: Table, S: Socket, TS: TimeSource> GenericCloud<D
|
||||||
|
|
||||||
fn handle_socket_data(&mut self, src: SocketAddr, data: &mut [u8]) {
|
fn handle_socket_data(&mut self, src: SocketAddr, data: &mut [u8]) {
|
||||||
let size = data.len();
|
let size = data.len();
|
||||||
if let Err(e) = decode(data, self.magic, &mut self.crypto).and_then(|msg| {
|
if let Err(e) = decode(data, self.magic, &self.crypto).and_then(|msg| {
|
||||||
self.traffic.count_in_traffic(src, size);
|
self.traffic.count_in_traffic(src, size);
|
||||||
self.handle_net_message(src, msg)
|
self.handle_net_message(src, msg)
|
||||||
}) {
|
}) {
|
||||||
|
|
|
@ -248,7 +248,7 @@ pub struct MockDevice {
|
||||||
|
|
||||||
impl MockDevice {
|
impl MockDevice {
|
||||||
pub fn new() -> Self {
|
pub fn new() -> Self {
|
||||||
Self { outbound: VecDeque::new(), inbound: VecDeque::new() }
|
Default::default()
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn put_inbound(&mut self, data: Vec<u8>) {
|
pub fn put_inbound(&mut self, data: Vec<u8>) {
|
||||||
|
@ -288,6 +288,12 @@ impl Device for MockDevice {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl Default for MockDevice {
|
||||||
|
fn default() -> Self {
|
||||||
|
Self { outbound: VecDeque::new(), inbound: VecDeque::new() }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl AsRawFd for MockDevice {
|
impl AsRawFd for MockDevice {
|
||||||
#[inline]
|
#[inline]
|
||||||
fn as_raw_fd(&self) -> RawFd {
|
fn as_raw_fd(&self) -> RawFd {
|
||||||
|
|
16
src/main.rs
16
src/main.rs
|
@ -5,22 +5,8 @@
|
||||||
#![cfg_attr(feature = "bench", feature(test))]
|
#![cfg_attr(feature = "bench", feature(test))]
|
||||||
|
|
||||||
#[macro_use] extern crate log;
|
#[macro_use] extern crate log;
|
||||||
extern crate time;
|
|
||||||
extern crate docopt;
|
|
||||||
#[macro_use] extern crate serde_derive;
|
#[macro_use] extern crate serde_derive;
|
||||||
extern crate serde;
|
|
||||||
extern crate serde_yaml;
|
|
||||||
extern crate signal;
|
|
||||||
extern crate libc;
|
|
||||||
extern crate rand;
|
|
||||||
extern crate fnv;
|
|
||||||
extern crate net2;
|
|
||||||
extern crate yaml_rust;
|
|
||||||
extern crate igd;
|
|
||||||
extern crate siphasher;
|
|
||||||
extern crate daemonize;
|
|
||||||
extern crate ring;
|
|
||||||
extern crate base_62;
|
|
||||||
#[cfg(test)] extern crate tempfile;
|
#[cfg(test)] extern crate tempfile;
|
||||||
#[cfg(feature = "bench")] extern crate test;
|
#[cfg(feature = "bench")] extern crate test;
|
||||||
|
|
||||||
|
|
|
@ -273,17 +273,17 @@ pub fn encode<'a>(msg: &'a mut Message, mut buf: &'a mut [u8], magic: HeaderMagi
|
||||||
|
|
||||||
impl<'a> PartialEq for Message<'a> {
|
impl<'a> PartialEq for Message<'a> {
|
||||||
fn eq(&self, other: &Message) -> bool {
|
fn eq(&self, other: &Message) -> bool {
|
||||||
match self {
|
match *self {
|
||||||
&Message::Data(ref data1, start1, end1) => if let &Message::Data(ref data2, start2, end2) = other {
|
Message::Data(ref data1, start1, end1) => if let Message::Data(ref data2, start2, end2) = *other {
|
||||||
data1[start1..end1] == data2[start2..end2]
|
data1[start1..end1] == data2[start2..end2]
|
||||||
} else { false },
|
} else { false },
|
||||||
&Message::Peers(ref peers1) => if let &Message::Peers(ref peers2) = other {
|
Message::Peers(ref peers1) => if let Message::Peers(ref peers2) = *other {
|
||||||
peers1 == peers2
|
peers1 == peers2
|
||||||
} else { false },
|
} else { false },
|
||||||
&Message::Init(step1, node_id1, ref ranges1) => if let &Message::Init(step2, node_id2, ref ranges2) = other {
|
Message::Init(step1, node_id1, ref ranges1) => if let Message::Init(step2, node_id2, ref ranges2) = *other {
|
||||||
step1 == step2 && node_id1 == node_id2 && ranges1 == ranges2
|
step1 == step2 && node_id1 == node_id2 && ranges1 == ranges2
|
||||||
} else { false },
|
} else { false },
|
||||||
&Message::Close => if let &Message::Close = other {
|
Message::Close => if let Message::Close = *other {
|
||||||
true
|
true
|
||||||
} else { false }
|
} else { false }
|
||||||
}
|
}
|
||||||
|
|
12
src/util.rs
12
src/util.rs
|
@ -177,9 +177,7 @@ pub struct CtrlC {
|
||||||
|
|
||||||
impl CtrlC {
|
impl CtrlC {
|
||||||
pub fn new() -> Self {
|
pub fn new() -> Self {
|
||||||
let dummy_time = Instant::now();
|
Default::default()
|
||||||
let trap = Trap::trap(&[Signal::SIGINT, Signal::SIGTERM, Signal::SIGQUIT]);
|
|
||||||
Self { dummy_time, trap }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn was_pressed(&self) -> bool {
|
pub fn was_pressed(&self) -> bool {
|
||||||
|
@ -187,6 +185,14 @@ impl CtrlC {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl Default for CtrlC {
|
||||||
|
fn default() -> Self {
|
||||||
|
let dummy_time = Instant::now();
|
||||||
|
let trap = Trap::trap(&[Signal::SIGINT, Signal::SIGTERM, Signal::SIGQUIT]);
|
||||||
|
Self { dummy_time, trap }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
pub trait TimeSource: Sync + Copy + Send + 'static {
|
pub trait TimeSource: Sync + Copy + Send + 'static {
|
||||||
fn now() -> Time;
|
fn now() -> Time;
|
||||||
|
|
Loading…
Reference in New Issue