pub trait VirtioDeviceBuilder: Sized {
const NAME: &'static str;
// Required method
fn create_vhost_user_device(
self,
_keep_rds: &mut Vec<RawDescriptor>,
) -> Result<Box<dyn VhostUserDeviceBuilder>>;
// Provided method
fn create_jail(
&self,
jail_config: Option<&JailConfig>,
virtio_transport: VirtioDeviceType,
) -> Result<Option<Minijail>> { ... }
}Expand description
A trait for spawning vhost-user device instances and jails from their configuration structure.
Required Associated Constants§
Required Methods§
Sourcefn create_vhost_user_device(
self,
_keep_rds: &mut Vec<RawDescriptor>,
) -> Result<Box<dyn VhostUserDeviceBuilder>>
fn create_vhost_user_device( self, _keep_rds: &mut Vec<RawDescriptor>, ) -> Result<Box<dyn VhostUserDeviceBuilder>>
Create a device suitable for being run as a vhost-user instance.
Provided Methods§
Sourcefn create_jail(
&self,
jail_config: Option<&JailConfig>,
virtio_transport: VirtioDeviceType,
) -> Result<Option<Minijail>>
fn create_jail( &self, jail_config: Option<&JailConfig>, virtio_transport: VirtioDeviceType, ) -> Result<Option<Minijail>>
Create a jail that is suitable to run a device.
The default implementation creates a simple jail with a seccomp policy derived from the base name of the device.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl VirtioDeviceBuilder for &NetParameters
impl VirtioDeviceBuilder for &NetParameters
const NAME: &'static str = "net"
fn create_jail( &self, jail_config: Option<&JailConfig>, virtio_transport: VirtioDeviceType, ) -> Result<Option<Minijail>>
fn create_vhost_user_device( self, keep_rds: &mut Vec<RawDescriptor>, ) -> Result<Box<dyn VhostUserDeviceBuilder>>
Source§impl VirtioDeviceBuilder for &VsockConfig
impl VirtioDeviceBuilder for &VsockConfig
const NAME: &'static str = "vhost_vsock"
fn create_vhost_user_device( self, keep_rds: &mut Vec<RawDescriptor>, ) -> Result<Box<dyn VhostUserDeviceBuilder>>
Source§impl VirtioDeviceBuilder for &SerialParameters
For creating console virtio devices.
impl VirtioDeviceBuilder for &SerialParameters
For creating console virtio devices.