summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorLinus Färnstrand <linus@mullvad.net>2018-11-15 16:00:08 +0100
committerLinus Färnstrand <linus@mullvad.net>2018-11-15 16:00:08 +0100
commit77e16517d54c9d0fbb9a1252acdca8dbf628a039 (patch)
treec090458c7fd008ff76213cfb3d3928602a471464
parentec1c0f6bd38199f06a144e43f6179ba17040665e (diff)
parent55917b506e3c7023f406fc806f5e52e9ab566cb3 (diff)
downloadmullvadvpn-77e16517d54c9d0fbb9a1252acdca8dbf628a039.tar.xz
mullvadvpn-77e16517d54c9d0fbb9a1252acdca8dbf628a039.zip
Merge branch 'transition-to-connected-after-routes'
-rw-r--r--CHANGELOG.md2
-rw-r--r--mullvad-tests/src/lib.rs2
-rw-r--r--talpid-core/src/tunnel/mod.rs4
-rw-r--r--talpid-openvpn-plugin/src/lib.rs2
4 files changed, 6 insertions, 4 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5a9eda6d90..af0836257d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -39,6 +39,8 @@ Line wrap the file at 100 chars. Th
### Fixed
- Cancel pending system notifications when the app becomes visible.
+- Transition to connected state after all routes are configured. Avoids problems with reaching the
+ internet directly after the app says it's connected.
#### Windows
- Use proper app id in the registry. This avoids false-positives with certain anti-virus software.
diff --git a/mullvad-tests/src/lib.rs b/mullvad-tests/src/lib.rs
index a8e291a5fd..f0a8a3898b 100644
--- a/mullvad-tests/src/lib.rs
+++ b/mullvad-tests/src/lib.rs
@@ -409,7 +409,7 @@ impl MockOpenVpnPluginRpcClient {
env.insert("ifconfig_local".to_owned(), "10.0.0.10".to_owned());
env.insert("route_vpn_gateway".to_owned(), "10.0.0.1".to_owned());
- self.send_event(openvpn_plugin::EventType::Up, env)
+ self.send_event(openvpn_plugin::EventType::RouteUp, env)
}
pub fn route_predown(&mut self) -> Result<()> {
diff --git a/talpid-core/src/tunnel/mod.rs b/talpid-core/src/tunnel/mod.rs
index 39f20588ff..410dcc39bb 100644
--- a/talpid-core/src/tunnel/mod.rs
+++ b/talpid-core/src/tunnel/mod.rs
@@ -109,7 +109,7 @@ impl TunnelEvent {
let reason = env.get("auth_failed_reason").cloned();
Some(TunnelEvent::AuthFailed(reason))
}
- openvpn_plugin::EventType::Up => {
+ openvpn_plugin::EventType::RouteUp => {
let interface = env
.get("dev")
.expect("No \"dev\" in tunnel up event")
@@ -191,7 +191,7 @@ impl TunnelMonitor {
};
let on_openvpn_event = move |event, env| {
- if event == openvpn_plugin::EventType::Up {
+ if event == openvpn_plugin::EventType::RouteUp {
// The user-pass file has been read. Try to delete it early.
let _ = fs::remove_file(&user_pass_file_path);
diff --git a/talpid-openvpn-plugin/src/lib.rs b/talpid-openvpn-plugin/src/lib.rs
index fd627efd97..aba5d4ab7e 100644
--- a/talpid-openvpn-plugin/src/lib.rs
+++ b/talpid-openvpn-plugin/src/lib.rs
@@ -54,7 +54,7 @@ error_chain!{
/// events.
pub static INTERESTING_EVENTS: &'static [EventType] = &[
EventType::AuthFailed,
- EventType::Up,
+ EventType::RouteUp,
EventType::RoutePredown,
];