diff options
| author | Markus Pettersson <markus.pettersson@mullvad.net> | 2026-04-20 19:30:36 +0200 |
|---|---|---|
| committer | Markus Pettersson <markus.pettersson@mullvad.net> | 2026-04-20 19:30:36 +0200 |
| commit | 26b52ed104d5f609626c30f3d7551ca4d90b8b87 (patch) | |
| tree | 9ef2c75d1f5f19063fa2a26685680e57ecce988e | |
| parent | d547c52700b62f747cbd3eb21de3362f9094ff64 (diff) | |
| download | mullvadvpn-fix-mullvad-daemon-segfault.tar.xz mullvadvpn-fix-mullvad-daemon-segfault.zip | |
Split shutdown.rs to a proper modulefix-mullvad-daemon-segfault
| -rw-r--r-- | mullvad-daemon/src/shutdown/mod.rs | 9 | ||||
| -rw-r--r-- | mullvad-daemon/src/shutdown/unix.rs (renamed from mullvad-daemon/src/shutdown.rs) | 36 | ||||
| -rw-r--r-- | mullvad-daemon/src/shutdown/windows.rs | 11 |
3 files changed, 28 insertions, 28 deletions
diff --git a/mullvad-daemon/src/shutdown/mod.rs b/mullvad-daemon/src/shutdown/mod.rs new file mode 100644 index 0000000000..a6828c2935 --- /dev/null +++ b/mullvad-daemon/src/shutdown/mod.rs @@ -0,0 +1,9 @@ +#[cfg(unix)] +mod unix; +#[cfg(unix)] +pub use unix::*; + +#[cfg(windows)] +mod windows; +#[cfg(windows)] +pub use windows::*; diff --git a/mullvad-daemon/src/shutdown.rs b/mullvad-daemon/src/shutdown/unix.rs index 2e7473b34f..1f6f7d2025 100644 --- a/mullvad-daemon/src/shutdown.rs +++ b/mullvad-daemon/src/shutdown/unix.rs @@ -1,30 +1,12 @@ -#[cfg(unix)] -mod platform { - use simple_signal::Signal; - use std::io; +use simple_signal::Signal; +use std::io; - pub fn set_shutdown_signal_handler(f: impl Fn() + 'static + Send) -> Result<(), io::Error> { - simple_signal::set_handler(&[Signal::Term, Signal::Int], move |s| { - log::debug!("Process received signal: {:?}", s); - f(); - }); - Ok(()) - } -} - -#[cfg(windows)] -mod platform { - #[derive(thiserror::Error, Debug)] - #[error("Unable to attach ctrl-c handler")] - pub struct Error(#[from] ctrlc::Error); - - pub fn set_shutdown_signal_handler(f: impl Fn() + 'static + Send) -> Result<(), Error> { - ctrlc::set_handler(move || { - log::debug!("Process received Ctrl-c"); - f(); - }) - .map_err(Error) - } +pub fn set_shutdown_signal_handler(f: impl Fn() + 'static + Send) -> Result<(), io::Error> { + simple_signal::set_handler(&[Signal::Term, Signal::Int], move |s| { + log::debug!("Process received signal: {:?}", s); + f(); + }); + Ok(()) } /// Returns true if systemd successfully reported that the machine is not shutting down or entering @@ -53,5 +35,3 @@ pub fn is_shutdown_user_initiated() -> bool { pub fn is_shutdown_user_initiated() -> bool { false } - -pub use self::platform::*; diff --git a/mullvad-daemon/src/shutdown/windows.rs b/mullvad-daemon/src/shutdown/windows.rs new file mode 100644 index 0000000000..c68cfcef78 --- /dev/null +++ b/mullvad-daemon/src/shutdown/windows.rs @@ -0,0 +1,11 @@ +#[derive(thiserror::Error, Debug)] +#[error("Unable to attach ctrl-c handler")] +pub struct Error(#[from] ctrlc::Error); + +pub fn set_shutdown_signal_handler(f: impl Fn() + 'static + Send) -> Result<(), Error> { + ctrlc::set_handler(move || { + log::debug!("Process received Ctrl-c"); + f(); + }) + .map_err(Error) +} |
