summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2020-05-07 15:19:16 +0200
committerDavid Lönnhager <david.l@mullvad.net>2020-05-13 17:56:36 +0200
commitd2b88b052ee1300250fcba9ba30b9c21c51dd20c (patch)
treeaca873c6da9f89bea82ed63411bbcb5ceea6a981
parent966aed476bd1ff454afaafd4cb05a773e558f43d (diff)
downloadmullvadvpn-d2b88b052ee1300250fcba9ba30b9c21c51dd20c.tar.xz
mullvadvpn-d2b88b052ee1300250fcba9ba30b9c21c51dd20c.zip
Gracefully shut down route manager
-rw-r--r--talpid-core/src/routing/linux.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/talpid-core/src/routing/linux.rs b/talpid-core/src/routing/linux.rs
index dc0e34bdc4..1d77a115c8 100644
--- a/talpid-core/src/routing/linux.rs
+++ b/talpid-core/src/routing/linux.rs
@@ -62,6 +62,9 @@ pub enum Error {
#[error(display = "Unknown device index - {}", _0)]
UnknownDeviceIndex(u32),
+
+ #[error(display = "Shutting down route manager")]
+ Shutdown,
}
pub struct RouteManagerImpl {
@@ -443,6 +446,7 @@ impl RouteManagerImplInner {
self.cleanup_routes().await;
log::trace!("Route manager done");
let _ = shutdown_signal.send(());
+ return Err(Error::Shutdown);
}
RouteManagerCommand::AddRoutes(routes, result_rx) => {
log::debug!("Adding routes: {:?}", routes);