Skip to main content

Server

Struct Server 

Source
pub struct Server { /* private fields */ }
Expand description

A struct modeling the server side of the VMBus control plane.

Implementations§

Source§

impl Server

Source

pub fn save(&self) -> SavedState

Saves state.

Source§

impl Server

Source

pub fn new( vtl: Vtl, child_connection_id: u32, channel_id_offset: u16, use_absolute_channel_order: bool, ) -> Self

Creates a new VMBus server.

Source

pub fn with_notifier<'a, T: Notifier>( &'a mut self, notifier: &'a mut T, ) -> ServerWithNotifier<'a, T>

Associates a Notifier with the server.

Source

pub fn set_require_server_allocated_mnf(&mut self, require: bool)

Requires that the server allocates monitor pages. If this is enabled, the server will ignore guest-specified monitor pages and act as if none of the channels use MNF.

Source

pub fn set_compatibility_version( &mut self, version: MaxVersionInfo, delay: bool, )

Sets a limit on the version and featuref flags that will be offered to the guest.

If delay is true, the limit will not apply to the first connection, but to all subsequent connections.

Source

pub fn set_restore_compatibility_version(&mut self, version: MaxVersionInfo)

Indicates the maximum supported version when restoring from saved state. This is configured separately from Self::set_compatibility_version so that the restore-time limit can be configured independently of the limit used for live negotiation.

This allows features to be enabled for rollback scenarios while not yet enabling them for new connections.

Source

pub fn channel_gpadls(&self, offer_id: OfferId) -> Vec<RestoredGpadl>

Source

pub fn get_version(&self) -> Option<VersionInfo>

Source

pub fn get_restore_open_params( &self, offer_id: OfferId, ) -> Result<OpenParams, RestoreError>

Source

pub fn has_pending_messages(&self) -> bool

Check if there are any messages in the pending queue.

Source

pub fn poll_flush_pending_messages( &mut self, send: impl FnMut(&OutgoingMessage) -> Poll<()>, ) -> Poll<()>

Tries to resend pending messages using the provided `send`` function.

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

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

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

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, 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.
§

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

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