fixup dir/file caps into rights
This commit is contained in:
@@ -593,8 +593,8 @@ impl<'a> wasi_snapshot_preview1::WasiSnapshotPreview1 for WasiCtx {
|
||||
}
|
||||
let dir = dir_entry.get_cap(DirCaps::OPEN)?;
|
||||
let child_dir = dir.open_dir(symlink_follow, path.deref())?;
|
||||
let file_caps = dir_entry.child_file_caps(FileCaps::from(&fs_rights_base));
|
||||
let dir_caps = dir_entry.child_dir_caps(DirCaps::from(&fs_rights_inheriting));
|
||||
let dir_caps = dir_entry.child_dir_caps(DirCaps::from(&fs_rights_base));
|
||||
let file_caps = dir_entry.child_file_caps(FileCaps::from(&fs_rights_inheriting));
|
||||
drop(dir);
|
||||
drop(dir_entry);
|
||||
let fd = table.push(Box::new(DirEntry::new(
|
||||
@@ -745,10 +745,12 @@ impl From<&FdStat> for types::Fdstat {
|
||||
|
||||
impl From<&DirStat> for types::Fdstat {
|
||||
fn from(dirstat: &DirStat) -> types::Fdstat {
|
||||
let fs_rights_base = types::Rights::from(&dirstat.dir_caps);
|
||||
let fs_rights_inheriting = types::Rights::from(&dirstat.file_caps);
|
||||
types::Fdstat {
|
||||
fs_filetype: types::Filetype::Directory,
|
||||
fs_rights_base: types::Rights::from(&dirstat.file_caps),
|
||||
fs_rights_inheriting: types::Rights::from(&dirstat.dir_caps),
|
||||
fs_rights_base,
|
||||
fs_rights_inheriting,
|
||||
fs_flags: types::Fdflags::empty(),
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user