Radish alpha
h
Radicle Heartwood Protocol & Stack
Radicle
Git (anonymous pull)
Log in to clone via SSH
crypto/ssh/keystore: Reduce scope of DirBuilderExt
Lorenz Leutgeb committed 8 months ago
commit b869f56710cb827bb88b5a8a45222a0e4315fc7c
parent 8bf9d33769408f69bb5cb7694d5cecbc01d641b7
1 file changed +12 -5
modified crates/radicle-crypto/src/ssh/keystore.rs
@@ -1,5 +1,4 @@
use std::ops::Deref;
-
use std::os::unix::fs::DirBuilderExt;
use std::path::{Path, PathBuf};
use std::{fs, io};

@@ -94,10 +93,18 @@ impl Keystore {
            return Err(Error::AlreadyInitialized);
        }

-
        fs::DirBuilder::new()
-
            .recursive(true)
-
            .mode(0o700)
-
            .create(&self.path)?;
+
        {
+
            let mut builder = fs::DirBuilder::new();
+
            builder.recursive(true);
+

+
            #[cfg(unix)]
+
            {
+
                use std::os::unix::fs::DirBuilderExt as _;
+
                builder.mode(0o700);
+
            }
+

+
            builder.create(&self.path)?;
+
        }

        secret.write_openssh_file(&path, ssh_key::LineEnding::default())?;
        public.write_openssh_file(&path.with_extension("pub"))?;