Skip to main content

VirtualMachineVmciDevice

Struct VirtualMachineVmciDevice 

Source
pub struct VirtualMachineVmciDevice {
    pub virtual_device_: VirtualDevice,
    pub id: Option<i64>,
    pub allow_unrestricted_communication: Option<bool>,
    pub filter_enable: Option<bool>,
    pub filter_info: Option<VirtualMachineVmciDeviceFilterInfo>,
}
Expand description

The VirtualMachineVMCIDevice data object represents a virtual communication device that supports the VMCI (Virtual Machine Communication Interface).

Each virtual machine has a VMCI device that handles interprocess socket-based communication. VMCI device information is available in the virtual machine hardware device list (VirtualMachine.VirtualMachine.config.VirtualMachineConfigInfo.hardware.VirtualHardware.device[]).

An application running on a virtual machine uses the VMCI Sockets API for communication with other virtual machines on the same host (communication between virtual machines is not supported on vSphere 5.1 and later platforms as described for VirtualVMCIDevice.VirtualMachineVMCIDevice.allowUnrestrictedCommunication), or for communication with the host. For information about using the vSphere VMCI Sockets API, see the VMCI Sockets Programming Guide.

§How to access

  • VirtualMachine::config.hardware.device?[*]→VirtualMachineVmciDevice
  • StoragePod::pod_storage_drs_entry.recommendation?[*].action?[*]→StoragePlacementAction.relocate_spec.device_change?[*].device→VirtualMachineVmciDevice
  • StoragePod::pod_storage_drs_entry.recommendation?[*].action?[*]→StorageMigrationAction.relocate_spec.device_change?[*].device→VirtualMachineVmciDevice
  • StoragePod::pod_storage_drs_entry.recommendation?[*].action?[*]→PlacementAction.relocate_spec?.device_change?[*].device→VirtualMachineVmciDevice
  • StoragePod::pod_storage_drs_entry.recommendation?[*].action?[*]→ClusterClusterInitialPlacementAction.config_spec?.device_change?[*].device→VirtualMachineVmciDevice
  • StoragePod::pod_storage_drs_entry.action_history?[*].action→StoragePlacementAction.relocate_spec.device_change?[*].device→VirtualMachineVmciDevice
  • ClusterComputeResource::action_history.action→StoragePlacementAction.relocate_spec.device_change?[*].device→VirtualMachineVmciDevice
  • ClusterComputeResource::action_history.action→StorageMigrationAction.relocate_spec.device_change?[*].device→VirtualMachineVmciDevice
  • ClusterComputeResource::action_history.action→PlacementAction.relocate_spec?.device_change?[*].device→VirtualMachineVmciDevice
  • ClusterComputeResource::action_history.action→ClusterClusterInitialPlacementAction.config_spec?.device_change?[*].device→VirtualMachineVmciDevice

(10 of 65 paths)

Fields§

§virtual_device_: VirtualDevice§id: Option<i64>

Unique identifier for VMCI socket access to this virtual machine.

Use this value to identify this virtual machine in calls to the VMCI Sockets API. Applications running on other virtual machines on this host will use this value to connect to this virtual machine. You can cast this value to a 32-bit unsigned integer.

The vSphere Server sets this value when a virtual machine powers on. The Server may change this value after power operations such as vMotion or restoring a virtual machine from a snapshot. If you have saved a VMCI device identifier, check to see if the value is still valid after power operations.

§allow_unrestricted_communication: Option<bool>

Deprecated as of vSphere API 5.1. On vSphere 5.1 and later platforms, the VMCI device does not support communication with other virtual machines. Therefore, this property has no effect on these platforms.

Determines the extent of VMCI communication with this virtual machine.

Set this property to true to allow VMCI communication with all virtual machines on the host and with trusted services. Set this property to false to allow VMCI communication only with trusted services such as the hypervisor on the host.

If unset, communication is restricted to trusted services only.

§filter_enable: Option<bool>

Determines if filtering of VMCI communication is enabled for this virtual machine.

Set this property to enable or disable filter rules as specified in VirtualMachineVMCIDevice.filterInfo.

§filter_info: Option<VirtualMachineVmciDeviceFilterInfo>

Specify a VirtualMachineVMCIDeviceFilterInfo data object that controls the extent of VMCI communication with this virtual machine.

Trait Implementations§

Source§

impl Debug for VirtualMachineVmciDevice

Source§

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

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

impl Deref for VirtualMachineVmciDevice

Source§

type Target = VirtualDevice

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl DerefMut for VirtualMachineVmciDevice

Source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.
Source§

impl Deserialize for VirtualMachineVmciDevice

Source§

fn begin(out: &mut Option<Self>) -> &mut dyn Visitor

The only correct implementation of this method is: Read more
Source§

impl Serialize for VirtualMachineVmciDevice

Source§

fn begin(&self) -> Fragment<'_>

Source§

impl VimObjectTrait for VirtualMachineVmciDevice

Source§

impl VirtualDeviceTrait for VirtualMachineVmciDevice

Source§

fn get_virtual_device(&self) -> &VirtualDevice

Get a reference to the VirtualDevice parent struct
Source§

fn get_virtual_device_mut(&mut self) -> &mut VirtualDevice

Get a mutable reference to the VirtualDevice parent struct
Source§

impl DataObjectTrait for VirtualMachineVmciDevice

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> AsAny for T
where T: 'static,

Source§

fn as_any_ref<'a>(&'a self) -> &'a (dyn Any + 'static)

Cast a reference to Any trait.

Source§

fn as_any_box(self: Box<T>) -> Box<dyn Any>

Cast to a boxed reference to Any trait.

Source§

fn type_id(&self) -> TypeId

Get the underlying type identifier.
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<To, T> CastInto<To> for T
where To: CastFrom<T> + ?Sized, T: 'static + ?Sized,

Source§

fn into_ref<'a>(&'a self) -> Option<&'a To>

Casts a reference to a trait object. If the cast fails, std::option::Option::None is returned.
Source§

fn into_box(self: Box<T>) -> Result<Box<To>, Box<dyn Any>>

Casts a boxed trait object to another trait object. If the cast fails, the original boxed trait object is returned in std::result::Result::Err.
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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
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<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
Source§

impl<T> ErasedDestructor for T
where T: 'static,