summaryrefslogtreecommitdiffhomepage
path: root/talpid-core/src
diff options
context:
space:
mode:
authorLinus Färnstrand <linus@mullvad.net>2018-10-24 10:30:57 +0200
committerLinus Färnstrand <linus@mullvad.net>2018-10-24 22:47:18 +0200
commitfdc40fd824c9140edf3c5045378deed5feda0241 (patch)
treeb7c7664dd060f3e06c2cf2403bd6a9a0bdaed80c /talpid-core/src
parent8426b8a87ed8948a22ee79c75c8f0418ac43ae94 (diff)
downloadmullvadvpn-fdc40fd824c9140edf3c5045378deed5feda0241.tar.xz
mullvadvpn-fdc40fd824c9140edf3c5045378deed5feda0241.zip
Fix various warnings emitted by the Clippy linter
Diffstat (limited to 'talpid-core/src')
-rw-r--r--talpid-core/src/security/linux/dns/network_manager.rs2
-rw-r--r--talpid-core/src/security/linux/dns/static_resolv_conf.rs13
-rw-r--r--talpid-core/src/security/linux/dns/systemd_resolved.rs12
-rw-r--r--talpid-core/src/security/linux/mod.rs25
-rw-r--r--talpid-core/src/tunnel/mod.rs10
-rw-r--r--talpid-core/src/tunnel/openvpn.rs8
-rw-r--r--talpid-core/src/tunnel_state_machine/connecting_state.rs2
7 files changed, 36 insertions, 36 deletions
diff --git a/talpid-core/src/security/linux/dns/network_manager.rs b/talpid-core/src/security/linux/dns/network_manager.rs
index 5bdddc7174..6db4893336 100644
--- a/talpid-core/src/security/linux/dns/network_manager.rs
+++ b/talpid-core/src/security/linux/dns/network_manager.rs
@@ -46,7 +46,7 @@ impl NetworkManager {
Ok(())
}
- fn as_manager<'a>(&'a self) -> dbus::ConnPath<'a, &'a dbus::Connection> {
+ fn as_manager(&self) -> dbus::ConnPath<&dbus::Connection> {
self.dbus_connection
.with_path(NM_BUS, NM_OBJECT_PATH, RPC_TIMEOUT_MS)
}
diff --git a/talpid-core/src/security/linux/dns/static_resolv_conf.rs b/talpid-core/src/security/linux/dns/static_resolv_conf.rs
index 6ece9ba44c..06d3bf3134 100644
--- a/talpid-core/src/security/linux/dns/static_resolv_conf.rs
+++ b/talpid-core/src/security/linux/dns/static_resolv_conf.rs
@@ -1,7 +1,6 @@
extern crate notify;
use std::net::IpAddr;
-use std::ops::DerefMut;
use std::sync::{mpsc, Arc, Mutex, MutexGuard};
use std::{fs, io, thread};
@@ -124,18 +123,18 @@ impl DnsWatcher {
.watch(RESOLV_CONF_PATH, RecursiveMode::NonRecursive)
.chain_err(|| ErrorKind::WatchResolvConf)?;
- thread::spawn(move || Self::event_loop(event_rx, state));
+ thread::spawn(move || Self::event_loop(event_rx, &state));
Ok(DnsWatcher { _watcher: watcher })
}
- fn event_loop(events: mpsc::Receiver<notify::RawEvent>, state: Arc<Mutex<Option<State>>>) {
+ fn event_loop(events: mpsc::Receiver<notify::RawEvent>, state: &Arc<Mutex<Option<State>>>) {
for _ in events {
- let locked_state = state
+ let mut locked_state = state
.lock()
.expect("a thread panicked while using the DNS configuration state");
- if let Err(error) = Self::update(locked_state) {
+ if let Err(error) = Self::update(locked_state.as_mut()) {
let chained_error = error
.chain_err(|| "Failed to update DNS state after DNS settings have changed.");
error!("{}", chained_error.display_chain());
@@ -143,8 +142,8 @@ impl DnsWatcher {
}
}
- fn update(mut locked_state: MutexGuard<Option<State>>) -> Result<()> {
- if let &mut Some(ref mut state) = locked_state.deref_mut() {
+ fn update(state: Option<&mut State>) -> Result<()> {
+ if let Some(state) = state {
let mut new_config = read_config()?;
let desired_nameservers = state
.desired_dns
diff --git a/talpid-core/src/security/linux/dns/systemd_resolved.rs b/talpid-core/src/security/linux/dns/systemd_resolved.rs
index 78e55a048b..5558ce2279 100644
--- a/talpid-core/src/security/linux/dns/systemd_resolved.rs
+++ b/talpid-core/src/security/linux/dns/systemd_resolved.rs
@@ -50,12 +50,12 @@ const RPC_TIMEOUT_MS: i32 = 1000;
lazy_static! {
static ref LINK_INTERFACE: Interface<'static> =
- Interface::from_slice("org.freedesktop.resolve1.Link".as_bytes()).unwrap();
+ Interface::from_slice(b"org.freedesktop.resolve1.Link").unwrap();
static ref MANAGER_INTERFACE: Interface<'static> =
- Interface::from_slice("org.freedesktop.resolve1.Manager".as_bytes()).unwrap();
- static ref GET_LINK_METHOD: Member<'static> = Member::from_slice("GetLink".as_bytes()).unwrap();
- static ref SET_DNS_METHOD: Member<'static> = Member::from_slice("SetDNS".as_bytes()).unwrap();
- static ref REVERT_METHOD: Member<'static> = Member::from_slice("Revert".as_bytes()).unwrap();
+ Interface::from_slice(b"org.freedesktop.resolve1.Manager").unwrap();
+ static ref GET_LINK_METHOD: Member<'static> = Member::from_slice(b"GetLink").unwrap();
+ static ref SET_DNS_METHOD: Member<'static> = Member::from_slice(b"SetDNS").unwrap();
+ static ref REVERT_METHOD: Member<'static> = Member::from_slice(b"Revert").unwrap();
}
pub struct SystemdResolved {
@@ -116,7 +116,7 @@ impl SystemdResolved {
.any(|nameserver| nameserver == resolved_dns_server))
}
- fn as_manager_object<'a>(&'a self) -> dbus::ConnPath<'a, &'a dbus::Connection> {
+ fn as_manager_object(&self) -> dbus::ConnPath<&dbus::Connection> {
self.dbus_connection
.with_path(RESOLVED_BUS, "/org/freedesktop/resolve1", RPC_TIMEOUT_MS)
}
diff --git a/talpid-core/src/security/linux/mod.rs b/talpid-core/src/security/linux/mod.rs
index e336fe21bd..0fb5b394be 100644
--- a/talpid-core/src/security/linux/mod.rs
+++ b/talpid-core/src/security/linux/mod.rs
@@ -257,14 +257,14 @@ impl<'a> PolicyBatch<'a> {
let allowed_states = nftnl::expr::ct::States::ESTABLISHED.bits();
in_rule.add_expr(&nft_expr!(bitwise mask allowed_states, xor 0u32))?;
in_rule.add_expr(&nft_expr!(cmp != 0u32))?;
- add_verdict(&mut in_rule, Verdict::Accept)?;
+ add_verdict(&mut in_rule, &Verdict::Accept)?;
self.batch.add(&in_rule, nftnl::MsgType::Add)?;
let mut out_rule = Rule::new(&self.out_chain)?;
check_endpoint(&mut out_rule, End::Dst, endpoint)?;
- add_verdict(&mut out_rule, Verdict::Accept)?;
+ add_verdict(&mut out_rule, &Verdict::Accept)?;
self.batch.add(&out_rule, nftnl::MsgType::Add)?;
@@ -285,7 +285,7 @@ impl<'a> PolicyBatch<'a> {
rule.add_expr(&nft_expr!(payload ipv4 daddr))?;
rule.add_expr(&nft_expr!(cmp != tunnel.gateway))?;
- add_verdict(&mut rule, Verdict::Drop)?;
+ add_verdict(&mut rule, &Verdict::Drop)?;
self.batch.add(&rule, nftnl::MsgType::Add)?;
Ok(())
@@ -310,14 +310,14 @@ impl<'a> PolicyBatch<'a> {
let mut rule = Rule::new(chain)?;
check_net(&mut rule, End::Src, IpNetwork::V4(*net))?;
check_net(&mut rule, End::Dst, IpNetwork::V4(*net))?;
- add_verdict(&mut rule, Verdict::Accept)?;
+ add_verdict(&mut rule, &Verdict::Accept)?;
self.batch.add(&rule, nftnl::MsgType::Add)?;
}
for net in &*super::LOCAL_INET6_NETS {
let mut rule = Rule::new(chain)?;
check_net(&mut rule, End::Src, IpNetwork::V6(*net))?;
check_net(&mut rule, End::Dst, IpNetwork::V6(*net))?;
- add_verdict(&mut rule, Verdict::Accept)?;
+ add_verdict(&mut rule, &Verdict::Accept)?;
self.batch.add(&rule, nftnl::MsgType::Add)?;
}
}
@@ -326,7 +326,7 @@ impl<'a> PolicyBatch<'a> {
let mut rule = Rule::new(&self.out_chain)?;
check_net(&mut rule, End::Src, IpNetwork::V4(*net))?;
check_net(&mut rule, End::Dst, IpNetwork::V4(*super::MULTICAST_NET))?;
- add_verdict(&mut rule, Verdict::Accept)?;
+ add_verdict(&mut rule, &Verdict::Accept)?;
self.batch.add(&rule, nftnl::MsgType::Add)?;
@@ -334,7 +334,7 @@ impl<'a> PolicyBatch<'a> {
let mut rule = Rule::new(&self.out_chain)?;
check_net(&mut rule, End::Src, IpNetwork::V4(*net))?;
check_ip(&mut rule, End::Dst, *super::SSDP_IP)?;
- add_verdict(&mut rule, Verdict::Accept)?;
+ add_verdict(&mut rule, &Verdict::Accept)?;
self.batch.add(&rule, nftnl::MsgType::Add)?;
}
@@ -346,7 +346,7 @@ impl<'a> PolicyBatch<'a> {
End::Dst,
IpNetwork::V6(*super::MULTICAST_INET6_NET),
)?;
- add_verdict(&mut rule, Verdict::Accept)?;
+ add_verdict(&mut rule, &Verdict::Accept)?;
self.batch.add(&rule, nftnl::MsgType::Add)?;
}
Ok(())
@@ -372,7 +372,7 @@ fn allow_dhcp_rule<'a>(chain: &'a Chain, direction: Direction) -> Result<Rule<'a
}
}
- add_verdict(&mut rule, Verdict::Accept)?;
+ add_verdict(&mut rule, &Verdict::Accept)?;
Ok(rule)
}
@@ -384,7 +384,7 @@ fn allow_interface_rule<'a>(
) -> Result<Rule<'a>> {
let mut rule = Rule::new(&chain)?;
check_iface(&mut rule, direction, iface)?;
- add_verdict(&mut rule, Verdict::Accept)?;
+ add_verdict(&mut rule, &Verdict::Accept)?;
Ok(rule)
}
@@ -496,9 +496,10 @@ fn l4proto(protocol: TransportProtocol) -> u8 {
}
}
-fn add_verdict(rule: &mut Rule, verdict: expr::Verdict) -> Result<()> {
+fn add_verdict(rule: &mut Rule, verdict: &expr::Verdict) -> Result<()> {
if *ADD_COUNTERS {
rule.add_expr(&nft_expr!(counter))?;
}
- Ok(rule.add_expr(&verdict)?)
+ rule.add_expr(verdict)?;
+ Ok(())
}
diff --git a/talpid-core/src/tunnel/mod.rs b/talpid-core/src/tunnel/mod.rs
index 4a37296575..791c83ce2d 100644
--- a/talpid-core/src/tunnel/mod.rs
+++ b/talpid-core/src/tunnel/mod.rs
@@ -102,10 +102,10 @@ impl TunnelEvent {
/// Converts an `OpenVpnPluginEvent` to a `TunnelEvent`.
/// Returns `None` if there is no corresponding `TunnelEvent`.
fn from_openvpn_event(
- event: &OpenVpnPluginEvent,
+ event: OpenVpnPluginEvent,
env: &HashMap<String, String>,
) -> Option<TunnelEvent> {
- match *event {
+ match event {
OpenVpnPluginEvent::AuthFailed => {
let reason = env.get("auth_failed_reason").cloned();
Some(TunnelEvent::AuthFailed(reason))
@@ -148,7 +148,7 @@ pub struct TunnelMonitor {
impl TunnelMonitor {
/// Creates a new `TunnelMonitor` that connects to the given remote and notifies `on_event`
/// on tunnel state changes.
- pub fn new<L>(
+ pub fn start<L>(
tunnel_endpoint: TunnelEndpoint,
tunnel_options: &TunnelOptions,
tunnel_alias: Option<OsString>,
@@ -180,13 +180,13 @@ impl TunnelMonitor {
// The user-pass file has been read. Try to delete it early.
let _ = fs::remove_file(&user_pass_file_path);
}
- match TunnelEvent::from_openvpn_event(&event, &env) {
+ match TunnelEvent::from_openvpn_event(event, &env) {
Some(tunnel_event) => on_event(tunnel_event),
None => debug!("Ignoring OpenVpnEvent {:?}", event),
}
};
- let monitor = openvpn::OpenVpnMonitor::new(
+ let monitor = openvpn::OpenVpnMonitor::start(
cmd,
on_openvpn_event,
Self::get_plugin_path(resource_dir)?,
diff --git a/talpid-core/src/tunnel/openvpn.rs b/talpid-core/src/tunnel/openvpn.rs
index 0eeae37faf..d3956ad5db 100644
--- a/talpid-core/src/tunnel/openvpn.rs
+++ b/talpid-core/src/tunnel/openvpn.rs
@@ -44,7 +44,7 @@ pub struct OpenVpnMonitor<C: OpenVpnBuilder = OpenVpnCommand> {
impl OpenVpnMonitor<OpenVpnCommand> {
/// Creates a new `OpenVpnMonitor` with the given listener and using the plugin at the given
/// path.
- pub fn new<L, P>(cmd: OpenVpnCommand, on_event: L, plugin_path: P) -> Result<Self>
+ pub fn start<L, P>(cmd: OpenVpnCommand, on_event: L, plugin_path: P) -> Result<Self>
where
L: Fn(OpenVpnPluginEvent, HashMap<String, String>) + Send + Sync + 'static,
P: AsRef<Path>,
@@ -233,7 +233,7 @@ mod event_server {
let mut io = IoHandler::new();
io.extend_with(rpc.to_delegate());
let meta_io: MetaIoHandler<()> = MetaIoHandler::from(io);
- talpid_ipc::IpcServer::start(meta_io, ipc_path)
+ talpid_ipc::IpcServer::start(meta_io, &ipc_path)
}
build_rpc_trait! {
@@ -289,7 +289,7 @@ mod tests {
fn start(&self) -> io::Result<Self::ProcessHandle> {
self.process_handle
- .ok_or(io::Error::new(io::ErrorKind::Other, "failed to start"))
+ .ok_or_else(|| io::Error::new(io::ErrorKind::Other, "failed to start"))
}
}
@@ -354,7 +354,7 @@ mod tests {
let builder = TestOpenVpnBuilder::default();
let error = OpenVpnMonitor::new_internal(builder, |_, _| {}, "").unwrap_err();
match error.kind() {
- &ErrorKind::ChildProcessError(_) => (),
+ ErrorKind::ChildProcessError(_) => (),
_ => panic!("Wrong error"),
}
}
diff --git a/talpid-core/src/tunnel_state_machine/connecting_state.rs b/talpid-core/src/tunnel_state_machine/connecting_state.rs
index f2ce3e0b4e..f86b34f1e0 100644
--- a/talpid-core/src/tunnel_state_machine/connecting_state.rs
+++ b/talpid-core/src/tunnel_state_machine/connecting_state.rs
@@ -96,7 +96,7 @@ impl ConnectingState {
};
let log_file = Self::prepare_tunnel_log_file(&parameters, log_dir)?;
- Ok(TunnelMonitor::new(
+ Ok(TunnelMonitor::start(
parameters.endpoint,
&parameters.options,
TUNNEL_INTERFACE_ALIAS.to_owned().map(OsString::from),