summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2023-02-10 10:28:25 +0100
committerDavid Lönnhager <david.l@mullvad.net>2023-02-10 10:28:25 +0100
commite52a806c445fbe928edf83e209fb1597189e6f0c (patch)
tree3ba4d1840838d9805ebcca3b424e4f1f00e96ae9
parent3a6158c180a4726f201ba6fb456b9277db4bde48 (diff)
parentd2e001506eb1f96c138b4d55fd07f0e46dd800b7 (diff)
downloadmullvadvpn-e52a806c445fbe928edf83e209fb1597189e6f0c.tar.xz
mullvadvpn-e52a806c445fbe928edf83e209fb1597189e6f0c.zip
Merge branch 'relax-settings-perms'
-rw-r--r--mullvad-daemon/src/management_interface.rs3
-rw-r--r--mullvad-daemon/src/migrations/mod.rs7
-rw-r--r--mullvad-daemon/src/settings.rs28
3 files changed, 3 insertions, 35 deletions
diff --git a/mullvad-daemon/src/management_interface.rs b/mullvad-daemon/src/management_interface.rs
index f7101fec21..a66ee7a7db 100644
--- a/mullvad-daemon/src/management_interface.rs
+++ b/mullvad-daemon/src/management_interface.rs
@@ -992,8 +992,7 @@ fn map_settings_error(error: settings::Error) -> Status {
match error {
settings::Error::DeleteError(..)
| settings::Error::WriteError(..)
- | settings::Error::ReadError(..)
- | settings::Error::SetPermissions(..) => {
+ | settings::Error::ReadError(..) => {
Status::new(Code::FailedPrecondition, error.to_string())
}
settings::Error::SerializeError(..) | settings::Error::ParseError(..) => {
diff --git a/mullvad-daemon/src/migrations/mod.rs b/mullvad-daemon/src/migrations/mod.rs
index 5b4c82702f..2987b36dfe 100644
--- a/mullvad-daemon/src/migrations/mod.rs
+++ b/mullvad-daemon/src/migrations/mod.rs
@@ -157,12 +157,7 @@ pub(crate) async fn migrate_all(
let buffer = serde_json::to_string_pretty(&settings).map_err(Error::Serialize)?;
- let mut options = fs::OpenOptions::new();
- #[cfg(unix)]
- {
- options.mode(0o600);
- }
- let mut file = options
+ let mut file = fs::OpenOptions::new()
.create(true)
.write(true)
.truncate(true)
diff --git a/mullvad-daemon/src/settings.rs b/mullvad-daemon/src/settings.rs
index 5ca3ff8908..3ca4408f06 100644
--- a/mullvad-daemon/src/settings.rs
+++ b/mullvad-daemon/src/settings.rs
@@ -38,9 +38,6 @@ pub enum Error {
#[error(display = "Unable to write settings to {}", _0)]
WriteError(String, #[error(source)] io::Error),
-
- #[error(display = "Unable to set settings file permissions")]
- SetPermissions(#[error(source)] io::Error),
}
#[derive(Debug)]
@@ -128,12 +125,7 @@ impl SettingsPersister {
log::debug!("Writing settings to {}", self.path.display());
let buffer = serde_json::to_string_pretty(&self.settings).map_err(Error::SerializeError)?;
- let mut options = fs::OpenOptions::new();
- #[cfg(unix)]
- {
- options.mode(0o600);
- }
- let mut file = options
+ let mut file = fs::OpenOptions::new()
.create(true)
.write(true)
.truncate(true)
@@ -143,24 +135,6 @@ impl SettingsPersister {
file.write_all(&buffer.into_bytes())
.await
.map_err(|e| Error::WriteError(self.path.display().to_string(), e))?;
-
- #[cfg(unix)]
- {
- use std::os::unix::fs::PermissionsExt;
- let mut permissions = file
- .metadata()
- .await
- .map_err(Error::SetPermissions)?
- .permissions();
- if permissions.mode() & 0o777 != 0o600 {
- log::debug!("Updating file permissions");
- permissions.set_mode(0o600);
- file.set_permissions(permissions)
- .await
- .map_err(Error::SetPermissions)?;
- }
- }
-
file.sync_all()
.await
.map_err(|e| Error::WriteError(self.path.display().to_string(), e))?;