Struct SandboxConfiguration

Source
#[repr(C)]
pub struct SandboxConfiguration { /* private fields */ }
Expand description

The complete set of configuration needed to create a Sandbox

Implementations§

Source§

impl SandboxConfiguration

Source

pub const DEFAULT_INPUT_SIZE: usize = 16_384usize

The default size of input data

Source

pub const MIN_INPUT_SIZE: usize = 8_192usize

The minimum size of input data

Source

pub const DEFAULT_OUTPUT_SIZE: usize = 16_384usize

The default size of output data

Source

pub const MIN_OUTPUT_SIZE: usize = 8_192usize

The minimum size of output data

Source

pub const DEFAULT_MAX_INITIALIZATION_TIME: u16 = 2_000u16

The default value for max initialization time (in milliseconds)

Source

pub const MIN_MAX_INITIALIZATION_TIME: u16 = 1u16

The minimum value for max initialization time (in milliseconds)

Source

pub const MAX_MAX_INITIALIZATION_TIME: u16 = 65_535u16

The maximum value for max initialization time (in milliseconds)

Source

pub const DEFAULT_MAX_EXECUTION_TIME: u16 = 1_000u16

The default and minimum values for max execution time (in milliseconds)

Source

pub const MIN_MAX_EXECUTION_TIME: u16 = 1u16

The minimum value for max execution time (in milliseconds)

Source

pub const MAX_MAX_EXECUTION_TIME: u16 = 65_535u16

The maximum value for max execution time (in milliseconds)

Source

pub const DEFAULT_MAX_WAIT_FOR_CANCELLATION: u8 = 100u8

The default and minimum values for max wait for cancellation (in milliseconds)

Source

pub const MIN_MAX_WAIT_FOR_CANCELLATION: u8 = 10u8

The minimum value for max wait for cancellation (in milliseconds)

Source

pub const MAX_MAX_WAIT_FOR_CANCELLATION: u8 = 255u8

The maximum value for max wait for cancellation (in milliseconds)

Source

pub fn set_input_data_size(&mut self, input_data_size: usize)

Set the size of the memory buffer that is made available for input to the guest the minimum value is MIN_INPUT_SIZE

Source

pub fn set_output_data_size(&mut self, output_data_size: usize)

Set the size of the memory buffer that is made available for output from the guest the minimum value is MIN_OUTPUT_SIZE

Source

pub fn set_stack_size(&mut self, stack_size: u64)

Set the stack size to use in the guest sandbox. If set to 0, the stack size will be determined from the PE file header

Source

pub fn set_heap_size(&mut self, heap_size: u64)

Set the heap size to use in the guest sandbox. If set to 0, the heap size will be determined from the PE file header

Source

pub fn set_max_execution_time(&mut self, max_execution_time: Duration)

Set the maximum execution time of a guest function execution. If set to 0, the max_execution_time will be set to the default value of DEFAULT_MAX_EXECUTION_TIME if the guest execution does not complete within the time specified then the execution will be cancelled, the minimum value is MIN_MAX_EXECUTION_TIME

Source

pub fn set_max_execution_cancel_wait_time( &mut self, max_wait_for_cancellation: Duration, )

Set the maximum time to wait for guest execution calculation. If set to 0, the maximum cancellation time will be set to the default value of DEFAULT_MAX_WAIT_FOR_CANCELLATION if the guest execution cancellation does not complete within the time specified then an error will be returned, the minimum value is MIN_MAX_WAIT_FOR_CANCELLATION

Source

pub fn set_max_initialization_time(&mut self, max_initialization_time: Duration)

Set the maximum time to wait for guest initialization. If set to 0, the maximum initialization time will be set to the default value of DEFAULT_MAX_INITIALIZATION_TIME if the guest initialization does not complete within the time specified then an error will be returned, the minimum value is MIN_MAX_INITIALIZATION_TIME

Trait Implementations§

Source§

impl Clone for SandboxConfiguration

Source§

fn clone(&self) -> SandboxConfiguration

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SandboxConfiguration

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for SandboxConfiguration

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl PartialEq for SandboxConfiguration

Source§

fn eq(&self, other: &SandboxConfiguration) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for SandboxConfiguration

Source§

impl Eq for SandboxConfiguration

Source§

impl StructuralPartialEq for SandboxConfiguration

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more