aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJake McGinty <me@jake.su>2018-03-09 02:57:55 +0000
committerJake McGinty <me@jake.su>2018-03-09 02:57:55 +0000
commit518836652cff33839be70c8444f695d9cf1d22d7 (patch)
tree693c87a942aa4e29312d69e495fb4f0c2465c452
parentsessions: handle next -> past transition (diff)
downloadwireguard-rs-518836652cff33839be70c8444f695d9cf1d22d7.tar.xz
wireguard-rs-518836652cff33839be70c8444f695d9cf1d22d7.zip
global: tidying up
-rw-r--r--benches/criterion.rs2
-rw-r--r--src/interface/peer_server.rs24
-rw-r--r--src/message.rs8
-rw-r--r--src/peer.rs2
-rw-r--r--src/udp/frame.rs2
5 files changed, 19 insertions, 19 deletions
diff --git a/benches/criterion.rs b/benches/criterion.rs
index 057dcf1..24ab8f8 100644
--- a/benches/criterion.rs
+++ b/benches/criterion.rs
@@ -16,9 +16,9 @@ use wireguard::time::Timestamp;
use x25519_dalek::{generate_secret, generate_public};
use rand::OsRng;
use std::convert::TryInto;
-use std::io::Write;
use std::time::Duration;
use pnet_packet::{Packet, ipv4::MutableIpv4Packet};
+//use std::io::Write;
//use socket2::{Socket, Domain, Type, Protocol};
struct Keypair {
diff --git a/src/interface/peer_server.rs b/src/interface/peer_server.rs
index 622213e..99c779c 100644
--- a/src/interface/peer_server.rs
+++ b/src/interface/peer_server.rs
@@ -114,14 +114,14 @@ impl PeerServer {
trace!("got a UDP packet from {:?} of length {}, packet type {}", &addr, packet.len(), packet[0]);
match packet.try_into()? {
- Message::Initiation(packet) => self.handle_ingress_handshake_init(addr, packet),
- Message::Response(packet) => self.handle_ingress_handshake_resp(addr, packet),
- Message::CookieReply(packet) => self.handle_ingress_cookie_reply(addr, packet),
- Message::Transport(packet) => self.handle_ingress_transport(addr, packet),
+ Message::Initiation(packet) => self.handle_ingress_handshake_init(addr, &packet),
+ Message::Response(packet) => self.handle_ingress_handshake_resp(addr, &packet),
+ Message::CookieReply(packet) => self.handle_ingress_cookie_reply(addr, &packet),
+ Message::Transport(packet) => self.handle_ingress_transport(addr, &packet),
}
}
- fn handle_ingress_handshake_init(&mut self, addr: SocketAddr, packet: Initiation) -> Result<(), Error> {
+ fn handle_ingress_handshake_init(&mut self, addr: SocketAddr, packet: &Initiation) -> Result<(), Error> {
ensure!(packet.len() == 148, "handshake init packet length is incorrect");
let mut state = self.shared_state.borrow_mut();
{
@@ -133,7 +133,7 @@ impl PeerServer {
let handshake = Peer::process_incoming_handshake(
&state.interface_info.private_key.ok_or_else(|| err_msg("no private key!"))?,
- &packet)?;
+ packet)?;
let peer_ref = state.pubkey_map.get(handshake.their_pubkey())
.ok_or_else(|| err_msg("unknown peer pubkey"))?.clone();
@@ -152,7 +152,7 @@ impl PeerServer {
}
// TODO use the address to update endpoint if it changes i suppose
- fn handle_ingress_handshake_resp(&mut self, _addr: SocketAddr, packet: Response) -> Result<(), Error> {
+ fn handle_ingress_handshake_resp(&mut self, _addr: SocketAddr, packet: &Response) -> Result<(), Error> {
ensure!(packet.len() == 92, "handshake resp packet length is incorrect");
let mut state = self.shared_state.borrow_mut();
{
@@ -166,7 +166,7 @@ impl PeerServer {
.ok_or_else(|| format_err!("unknown our_index ({})", our_index))?
.clone();
let mut peer = peer_ref.borrow_mut();
- let dead_index = peer.process_incoming_handshake_response(&packet)?;
+ let dead_index = peer.process_incoming_handshake_response(packet)?;
if let Some(index) = dead_index {
let _ = state.index_map.remove(&index);
}
@@ -200,22 +200,22 @@ impl PeerServer {
Ok(())
}
- fn handle_ingress_cookie_reply(&mut self, _addr: SocketAddr, packet: CookieReply) -> Result<(), Error> {
+ fn handle_ingress_cookie_reply(&mut self, _addr: SocketAddr, packet: &CookieReply) -> Result<(), Error> {
let state = self.shared_state.borrow_mut();
let peer_ref = state.index_map.get(&packet.our_index()).ok_or_else(|| err_msg("unknown our_index"))?.clone();
let mut peer = peer_ref.borrow_mut();
- peer.consume_cookie_reply(&packet)
+ peer.consume_cookie_reply(packet)
}
- fn handle_ingress_transport(&mut self, addr: SocketAddr, packet: Transport) -> Result<(), Error> {
+ fn handle_ingress_transport(&mut self, addr: SocketAddr, packet: &Transport) -> Result<(), Error> {
let peer_ref = self.shared_state.borrow().index_map.get(&packet.our_index())
.ok_or_else(|| err_msg("unknown our_index"))?.clone();
let (raw_packet, needs_handshake) = {
let mut peer = peer_ref.borrow_mut();
let mut state = self.shared_state.borrow_mut();
- let (raw_packet, transition) = peer.handle_incoming_transport(addr, &packet)?;
+ let (raw_packet, transition) = peer.handle_incoming_transport(addr, packet)?;
// If a new session has been set to current (TODO make this more clear)
if let Some(possible_dead_index) = transition {
diff --git a/src/message.rs b/src/message.rs
index 94104c3..32445f6 100644
--- a/src/message.rs
+++ b/src/message.rs
@@ -38,7 +38,7 @@ impl Initiation {
}
pub fn as_bytes(&self) -> &[u8] {
- &self
+ self
}
}
@@ -76,7 +76,7 @@ impl Response {
}
pub fn as_bytes(&self) -> &[u8] {
- &self
+ self
}
}
@@ -110,7 +110,7 @@ impl CookieReply {
}
pub fn as_bytes(&self) -> &[u8] {
- &self
+ self
}
}
@@ -140,7 +140,7 @@ impl Transport {
}
pub fn as_bytes(&self) -> &[u8] {
- &self
+ self
}
}
diff --git a/src/peer.rs b/src/peer.rs
index 8616a59..8bbc763 100644
--- a/src/peer.rs
+++ b/src/peer.rs
@@ -306,7 +306,7 @@ impl Peer {
pub fn process_incoming_handshake_response(&mut self, packet: &Response) -> Result<Option<u32>, Error> {
let mut session = mem::replace(&mut self.sessions.next, None).ok_or_else(|| err_msg("no next session"))?;
- let _ = session.noise.read_message(&packet.noise_bytes(), &mut [])?;
+ let _ = session.noise.read_message(packet.noise_bytes(), &mut [])?;
session = session.into_transport_mode()?;
session.their_index = packet.their_index();
session.birthday = Timestamp::now();
diff --git a/src/udp/frame.rs b/src/udp/frame.rs
index 1cdacf6..7f38e57 100644
--- a/src/udp/frame.rs
+++ b/src/udp/frame.rs
@@ -31,7 +31,7 @@ pub struct UdpFramed {
impl UdpFramed {
pub fn socket(&self) -> &UdpSocket {
match self.socket {
- Socket::Unconnected(ref socket) => &socket,
+ Socket::Unconnected(ref socket) => socket,
Socket::Connected(ref socket) => &socket.inner,
}
}