diff --git a/src/linux/zygote/setup.rs b/src/linux/zygote/setup.rs index c4b4614d..3c94bd29 100644 --- a/src/linux/zygote/setup.rs +++ b/src/linux/zygote/setup.rs @@ -12,7 +12,7 @@ use crate::{ }; use nix::sys::signal; use std::{ - ffi::CString, + ffi::{CStr, CString}, fs, io, io::Write, os::unix::{ffi::OsStrExt, io::RawFd}, @@ -60,11 +60,14 @@ fn expose_dir(jail_root: &Path, system_path: &Path, alias_path: &Path, kind: Sha } let bind_target = CString::new(bind_target.as_os_str().as_bytes()).unwrap(); let bind_src = CString::new(system_path.as_os_str().as_bytes()).unwrap(); + let fstype = CStr::from_bytes_with_nul(b"none\0").unwrap(); unsafe { + // libc::printf(fstype.as_ptr()); + // libc::printf(b"bind\0".as_ptr().cast()); let mnt_res = libc::mount( bind_src.as_ptr(), bind_target.as_ptr(), - ptr::null(), + fstype.as_ptr(), libc::MS_BIND, ptr::null(), );