wasmer_wasix/journal/effector/syscalls/
fd_set_rights.rs1use super::*;
2
3impl JournalEffector {
4 pub fn save_fd_set_rights(
5 ctx: &mut FunctionEnvMut<'_, WasiEnv>,
6 fd: Fd,
7 fs_rights_base: Rights,
8 fs_rights_inheriting: Rights,
9 ) -> anyhow::Result<()> {
10 Self::save_event(
11 ctx,
12 JournalEntry::FileDescriptorSetRightsV1 {
13 fd,
14 fs_rights_base,
15 fs_rights_inheriting,
16 },
17 )
18 }
19
20 pub fn apply_fd_set_rights(
21 ctx: &mut FunctionEnvMut<'_, WasiEnv>,
22 fd: Fd,
23 fs_rights_base: Rights,
24 fs_rights_inheriting: Rights,
25 ) -> anyhow::Result<()> {
26 crate::syscalls::fd_fdstat_set_rights_internal(ctx, fd, fs_rights_base, fs_rights_inheriting)
27 .map_err(|err| {
28 anyhow::format_err!(
29 "journal restore error: failed to set file rights (fd={fd}, fs_rights_base={fs_rights_base:?}, fs_rights_inheriting={fs_rights_inheriting:?}) - {err}")
30 })?;
31 Ok(())
32 }
33}