wasmer_wasix/journal/effector/syscalls/
port_addr_add.rs1use virtual_net::IpCidr;
2
3use super::*;
4
5impl JournalEffector {
6 pub fn save_port_addr_add(
7 ctx: &mut FunctionEnvMut<'_, WasiEnv>,
8 cidr: IpCidr,
9 ) -> anyhow::Result<()> {
10 Self::save_event(ctx, JournalEntry::PortAddAddrV1 { cidr })
11 }
12
13 pub fn apply_port_addr_add(
14 ctx: &mut FunctionEnvMut<'_, WasiEnv>,
15 cidr: IpCidr,
16 ) -> anyhow::Result<()> {
17 crate::syscalls::port_addr_add_internal(ctx, cidr)
18 .map(|r| r.map_err(|err| err.to_string()))
19 .unwrap_or_else(|err| Err(err.to_string()))
20 .map_err(|err| {
21 anyhow::format_err!(
22 "journal restore error: failed to add address to port file descriptor (cidr={cidr:?}) - {err}")
23 })?;
24 Ok(())
25 }
26}