pub struct WasmSandboxConfig {
pub max_fuel: u64,
pub max_memory_bytes: usize,
pub max_execution_time_secs: u64,
pub allowed_host_calls: Vec<String>,
pub wasi_enabled: bool,
pub max_module_size_bytes: usize,
}Expand description
Configuration for the WASM sandbox.
Fields§
§max_fuel: u64Maximum fuel units (roughly equivalent to instructions). Default: 1,000,000 (~100ms on modern hardware).
max_memory_bytes: usizeMaximum memory in bytes the WASM module may allocate. Default: 16 MiB.
max_execution_time_secs: u64Wall-clock timeout for execution. Default: 30 seconds.
allowed_host_calls: Vec<String>Host function calls the WASM module is allowed to make. Empty means no host calls permitted.
wasi_enabled: boolWhether to enable WASI (basic I/O, no filesystem).
max_module_size_bytes: usizeMaximum WASM module size in bytes before loading. Default: 10 MiB.
Implementations§
Source§impl WasmSandboxConfig
impl WasmSandboxConfig
Sourcepub fn execution_timeout(&self) -> Duration
pub fn execution_timeout(&self) -> Duration
Get the execution timeout as a Duration.
Trait Implementations§
Source§impl Clone for WasmSandboxConfig
impl Clone for WasmSandboxConfig
Source§fn clone(&self) -> WasmSandboxConfig
fn clone(&self) -> WasmSandboxConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for WasmSandboxConfig
impl Debug for WasmSandboxConfig
Source§impl Default for WasmSandboxConfig
impl Default for WasmSandboxConfig
Source§impl<'de> Deserialize<'de> for WasmSandboxConfig
impl<'de> Deserialize<'de> for WasmSandboxConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for WasmSandboxConfig
impl RefUnwindSafe for WasmSandboxConfig
impl Send for WasmSandboxConfig
impl Sync for WasmSandboxConfig
impl Unpin for WasmSandboxConfig
impl UnsafeUnpin for WasmSandboxConfig
impl UnwindSafe for WasmSandboxConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more