pub struct Sandboxed {
pub profile: Profile,
pub backend: Backend,
pub network_allow: Vec<Vec<String>>,
pub network_allow_prefix: Vec<Vec<String>>,
}Expand description
A runner that confines every command.
Fields§
§profile: ProfileThe confinement.
backend: BackendThe OS mechanism.
network_allow: Vec<Vec<String>>Exact commands that get the network.
network_allow_prefix: Vec<Vec<String>>Prefixes (two elements or more) that get it.
Implementations§
Source§impl Sandboxed
impl Sandboxed
Sourcepub fn network_for(&self, argv: &[String]) -> Network
pub fn network_for(&self, argv: &[String]) -> Network
The network argv gets: its profile’s, or all of it for an allowed
command (exactly, or extending an allowed prefix).
Sourcepub fn run_with_network(&self, inv: &Invocation, network: Network) -> Outcome
pub fn run_with_network(&self, inv: &Invocation, network: Network) -> Outcome
Runs inv with network instead of the profile’s.
Trait Implementations§
Source§impl CommandRunner for Sandboxed
impl CommandRunner for Sandboxed
Source§fn run(&self, inv: &Invocation) -> Outcome
fn run(&self, inv: &Invocation) -> Outcome
Runs
inv to completion or deadline.Auto Trait Implementations§
impl Freeze for Sandboxed
impl RefUnwindSafe for Sandboxed
impl Send for Sandboxed
impl Sync for Sandboxed
impl Unpin for Sandboxed
impl UnsafeUnpin for Sandboxed
impl UnwindSafe for Sandboxed
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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 moreSource§impl<T> IntoMaybeUndefined<T> for T
impl<T> IntoMaybeUndefined<T> for T
Source§fn into_maybe_undefined(self) -> MaybeUndefined<T>
fn into_maybe_undefined(self) -> MaybeUndefined<T>
Converts this value into a three-state builder argument.
Source§impl<T> IntoOption<T> for T
impl<T> IntoOption<T> for T
Source§fn into_option(self) -> Option<T>
fn into_option(self) -> Option<T>
Converts this value into an optional builder argument.
Creates a shared type from an unshared type.