From dc26f97117ed1a442918861fd020d50f4d5ab1c8 Mon Sep 17 00:00:00 2001 From: Valentin Tolmer Date: Sun, 18 Aug 2024 19:54:47 +0200 Subject: [PATCH] server: Fix compilation on Windows --- server/src/infra/configuration.rs | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/server/src/infra/configuration.rs b/server/src/infra/configuration.rs index 733c86e..e99763e 100644 --- a/server/src/infra/configuration.rs +++ b/server/src/infra/configuration.rs @@ -229,16 +229,22 @@ fn generate_random_private_key() -> ServerSetup { ServerSetup::new(&mut rng) } +#[cfg(unix)] +fn set_mode(permissions: &mut std::fs::Permissions) { + use std::os::unix::fs::PermissionsExt; + permissions.set_mode(0o400); +} + +#[cfg(not(unix))] +fn set_mode(_: &mut std::fs::Permissions) {} + fn write_to_readonly_file(path: &std::path::Path, buffer: &[u8]) -> Result<()> { use std::{fs::File, io::Write}; assert!(!path.exists()); let mut file = File::create(path)?; let mut permissions = file.metadata()?.permissions(); permissions.set_readonly(true); - if cfg!(unix) { - use std::os::unix::fs::PermissionsExt; - permissions.set_mode(0o400); - } + set_mode(&mut permissions); file.set_permissions(permissions)?; Ok(file.write_all(buffer)?) }