pub struct DevicesCommand {
pub async_executor: Option<ExecutorKind>,
pub disable_sandbox: bool,
pub jail: JailConfig,
pub serial: Vec<VhostUserParams<SerialParameters>>,
pub block: Vec<VhostUserParams<DiskOption>>,
pub vsock: Vec<VhostUserParams<VsockConfig>>,
pub net: Vec<VhostUserParams<NetParameters>>,
pub control_socket: Option<PathBuf>,
}
Expand description
Start one or several jailed device processes.
Fields§
§async_executor: Option<ExecutorKind>
configure async executor backend to “uring” or “epoll” (default).
disable_sandbox: bool
disable sandboxing. Will nullify the –jail option if it was present.
jail: JailConfig
set up the jail configuration.
Possible key values:
pivot-root=/path - Path to empty directory to use for
sandbox pivot root.
seccomp-policy-dir=/path - Path to seccomp .policy files
seccomp-log-failures=(true|false) - Log seccomp filter
failures instead of them being fatal.
serial: Vec<VhostUserParams<SerialParameters>>
start a serial device.
Possible key values:
vhost=PATH - Path to a vhost-user socket to listen to.
This parameter must be given in first position.
type=(stdout,syslog,sink,file) - Where to route the
serial device
hardware=(serial,virtio-console) - Which type of serial
hardware to emulate. Defaults to 8250 UART (serial).
num=(1,2,3,4) - Serial Device Number. If not provided,
num will default to 1.
path=PATH - The path to the file to write to when
type=file
input=PATH - The path to the file to read from when not
stdin
console - Use this serial device as the guest console.
Can only be given once. Will default to first
serial port if not provided.
earlycon - Use this serial device as the early console.
Can only be given once.
stdin - Direct standard input to this serial device.
Can only be given once. Will default to first serial
port if not provided.
pci-address - Preferred PCI address, e.g. “00:01.0”.
Only applies to virtio-console hardware type.
block: Vec<VhostUserParams<DiskOption>>
start a block device.
Possible key values:
vhost=PATH - Path to a vhost-user socket to listen to.
This parameter must be given in first position.
block options:
See help from crosvm run
command.
vsock: Vec<VhostUserParams<VsockConfig>>
start a vsock device.
Possible key values:
vhost=PATH - Path to a vhost-user socket to listen to.
This parameter must be given in first position.
cid=CID - CID to use for the device.
device=VHOST_DEVICE - path to the vhost-vsock device to
use (Linux only). Defaults to /dev/vhost-vsock.
net: Vec<VhostUserParams<NetParameters>>
start a network device.
Possible key values:
vhost=PATH - Path to a vhost-user socket to listen to.
This parameter must be given in first position.
network options:
See help from the crosvm run
command.
control_socket: Option<PathBuf>
path to put the control socket.
Trait Implementations§
source§impl Debug for DevicesCommand
impl Debug for DevicesCommand
source§impl FromArgs for DevicesCommand
impl FromArgs for DevicesCommand
source§fn from_args(__cmd_name: &[&str], __args: &[&str]) -> Result<Self, EarlyExit>
fn from_args(__cmd_name: &[&str], __args: &[&str]) -> Result<Self, EarlyExit>
source§fn redact_arg_values(
__cmd_name: &[&str],
__args: &[&str]
) -> Result<Vec<String>, EarlyExit>
fn redact_arg_values( __cmd_name: &[&str], __args: &[&str] ) -> Result<Vec<String>, EarlyExit>
Auto Trait Implementations§
impl RefUnwindSafe for DevicesCommand
impl Send for DevicesCommand
impl Sync for DevicesCommand
impl Unpin for DevicesCommand
impl UnwindSafe for DevicesCommand
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.