Enum zircon_object::ZxError [−][src]
Zircon statuses are signed 32 bit integers. The space of values is divided as follows:
- The zero value is for the OK status.
- Negative values are defined by the system, in this file.
- Positive values are reserved for protocol-specific error values, and will never be defined by the system.
Variants
Success.
The system encountered an otherwise unspecified error while performing the operation.
The operation is not implemented, supported, or enabled.
The system was not able to allocate some resource needed for the operation.
The system was not able to allocate memory needed for the operation.
The system call was interrupted, but should be retried. This should not be seen outside of the VDSO.
an argument is invalid, ex. null pointer
A specified handle value does not refer to a handle.
The subject of the operation is the wrong type to perform the operation. Example: Attempting a message_read on a thread handle.
The specified syscall number is invalid.
An argument is outside the valid range for this operation.
A caller provided buffer is too small for this operation.
operation failed because the current state of the object does not allow it, or a precondition of the operation is not satisfied
The time limit for the operation elapsed before the operation completed.
The operation cannot be performed currently but potentially could succeed if the caller waits for a prerequisite to be satisfied, for example waiting for a handle to be readable or writable. Example: Attempting to read from a channel that has no messages waiting but has an open remote will return ZX_ERR_SHOULD_WAIT. Attempting to read from a channel that has no messages waiting and has a closed remote end will return ZX_ERR_PEER_CLOSED.
The in-progress operation (e.g. a wait) has been canceled.
The operation failed because the remote end of the subject of the operation was closed.
The requested entity is not found.
An object with the specified identifier already exists. Example: Attempting to create a file when a file already exists with that name.
The operation failed because the named entity is already owned or controlled by another entity. The operation could succeed later if the current owner releases the entity.
The subject of the operation is currently unable to perform the operation. Note: This is used when there’s no direct way for the caller to observe when the subject will be able to perform the operation and should thus retry.
The caller did not have permission to perform the specified operation.
Otherwise unspecified error occurred during I/O.
The entity the I/O operation is being performed on rejected the operation. Example: an I2C device NAK’ing a transaction or a disk controller rejecting an invalid command, or a stalled USB endpoint.
The data in the operation failed an integrity check and is possibly corrupted. Example: CRC or Parity error.
The data in the operation is currently unavailable and may be permanently lost. Example: A disk block is irrecoverably damaged.
The device is no longer available (has been unplugged from the system, powered down, or the driver has been unloaded,
More data was received from the device than expected. Example: a USB “babble” error due to a device sending more data than the host queued to receive.
An operation did not complete within the required timeframe. Example: A USB isochronous transfer that failed to complete due to an overrun or underrun.
The data in the operation is invalid parameter or is out of range. Example: A USB transfer that failed to complete with TRB Error
Path name is too long.
Object is not a directory or does not support directory operations. Example: Attempted to open a file as a directory or attempted to do directory operations on a file.
Object is not a regular file.
This operation would cause a file to exceed a filesystem-specific size limit
Filesystem or device space is exhausted.
Directory is not empty.
Do not call again. Example: A notification callback will be called on every event until it returns something other than ZX_OK. This status allows differentiation between “stop due to an error” and “stop because the work is done.”
Advance to the next item. Example: A notification callback will use this response to indicate it did not “consume” an item passed to it, but by choice, not due to an error condition.
Ownership of the item has moved to an asynchronous worker.
Unlike ZX_ERR_STOP, which implies that iteration on an object should stop, and ZX_ERR_NEXT, which implies that iteration should continue to the next item, ZX_ERR_ASYNC implies that an asynchronous worker is responsible for continuing iteration.
Example: A notification callback will be called on every event, but one event needs to handle some work asynchronously before it can continue. ZX_ERR_ASYNC implies the worker is responsible for resuming iteration once its work has completed.
Specified protocol is not supported.
Host is unreachable.
Address is being used by someone else.
Socket is not connected.
Remote peer rejected the connection.
Connection was reset.
Connection was aborted.
Trait Implementations
impl Clone for ZxError
[src]
impl Copy for ZxError
[src]
impl Debug for ZxError
[src]
impl Eq for ZxError
[src]
impl From<Error> for ZxError
[src]
impl PartialEq<ZxError> for ZxError
[src]
fn eq(&self, other: &ZxError) -> bool
[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl StructuralEq for ZxError
[src]
impl StructuralPartialEq for ZxError
[src]
Auto Trait Implementations
impl RefUnwindSafe for ZxError
impl Send for ZxError
impl Sync for ZxError
impl Unpin for ZxError
impl UnwindSafe for ZxError
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Downcast for T where
T: Any,
[src]
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
[src]
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]
pub fn as_any(&self) -> &(dyn Any + 'static)
[src]
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]
impl<T> DowncastSync for T where
T: Send + Sync + Any,
[src]
T: Send + Sync + Any,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,