pub enum VmmProcessError {
IncorrectState(VmmProcessState),
ApiSocketDisabled,
ChangeOwnerError(ChangeOwnerError),
RequestError(Box<dyn Error + Send + Sync>),
InvalidUri {
uri: String,
error: InvalidUri,
},
SigkillError(Error),
CtrlAltDelRequestInvalid(Error),
CtrlAltDelRequestDenied(StatusCode),
ProcessWaitFailed(Error),
ExecutorError(VmmExecutorError),
ProcessHandlePipesError(ProcessHandlePipesError),
ResourceSystemError(ResourceSystemError),
}vmm-core and vmm-process only.Expand description
Error caused during a VmmProcess operation.
Variants§
IncorrectState(VmmProcessState)
The VmmProcess was in an incorrect VmmProcessState, which is not allowed for the requested operation.
ApiSocketDisabled
Attempted to send an API request or send Ctrl+Alt+Del (which is done via an API request) with the API socket being disabled.
ChangeOwnerError(ChangeOwnerError)
A ChangeOwnerError occurred while changing the ownership of the VMM’s API socket file.
RequestError(Box<dyn Error + Send + Sync>)
Completing an API request failed due to an HTTP error. The actual error is boxed and opaque in order not to expose the underlying HTTP connection pool’s implementation, which is currently that of hyper_util.
InvalidUri
A given URI for an API request was incorrect.
Fields
error: InvalidUriThe http::uri::InvalidUri error with the reason for the URI being invalid.
SigkillError(Error)
An I/O error occurred while attempting to send a SIGKILL signal via the ProcessHandle.
CtrlAltDelRequestInvalid(Error)
The Ctrl+Alt+Del HTTP request was invalid due to an http::Error. This is usually caused by an internal bug in the library.
CtrlAltDelRequestDenied(StatusCode)
The Ctrl+Alt+Del HTTP request was denied by the API with the given unsuccessful StatusCode.
ProcessWaitFailed(Error)
An I/O error occurred while waiting for the process to exit via the ProcessHandle.
ExecutorError(VmmExecutorError)
A VmmExecutorError occurred while performing a prepare/invoke/cleanup invocation via the VmmExecutor of the VmmProcess.
ProcessHandlePipesError(ProcessHandlePipesError)
A ProcessHandlePipesError occurred while attempting to take out pipes via the ProcessHandle.
ResourceSystemError(ResourceSystemError)
A ResourceSystemError occurred while performing manual synchronization with the ResourceSystem after a VmmExecutor prepare/invoke/cleanup invocation.
Trait Implementations§
Source§impl Debug for VmmProcessError
impl Debug for VmmProcessError
Source§impl Display for VmmProcessError
impl Display for VmmProcessError
Source§impl Error for VmmProcessError
impl Error for VmmProcessError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
Auto Trait Implementations§
impl Freeze for VmmProcessError
impl !RefUnwindSafe for VmmProcessError
impl Send for VmmProcessError
impl !Sync for VmmProcessError
impl Unpin for VmmProcessError
impl !UnwindSafe for VmmProcessError
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
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request