From 548170cbe764fc319eb1ef99aab0199bf9c6d7a5 Mon Sep 17 00:00:00 2001 From: Till Wegmueller Date: Tue, 7 Apr 2026 21:32:25 +0200 Subject: [PATCH] Set executable permissions (0755) on uploaded files via SFTP --- crates/vm-manager/src/ssh.rs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/crates/vm-manager/src/ssh.rs b/crates/vm-manager/src/ssh.rs index 47a258e..d39d0ac 100644 --- a/crates/vm-manager/src/ssh.rs +++ b/crates/vm-manager/src/ssh.rs @@ -201,6 +201,20 @@ pub fn upload(sess: &Session, local: &Path, remote: &Path) -> Result<()> { detail: format!("SFTP write: {e}"), })?; + // Close the file handle before setting permissions + drop(remote_file); + + // Set executable permissions (0o755) + let stat = ssh2::FileStat { + size: None, + uid: None, + gid: None, + perm: Some(0o755), + atime: None, + mtime: None, + }; + let _ = sftp.setstat(remote, stat); + Ok(()) }