xous-api-names: add TryConnect

This is a non-blocking version of Connect that is fallible.

Signed-off-by: Sean Cross <sean@xobs.io>
This commit is contained in:
Sean Cross 2022-11-07 18:45:25 +08:00
parent 1bc39cd513
commit 3ca57bcf8b

View file

@ -52,6 +52,34 @@ pub enum Opcode {
/// }
/// ```
BlockingConnect = 6,
/// Connect to a Server, returning the connection ID or an authentication request if
/// it exists, and returning ServerNotFound if it does not exist.
///
/// # Message Types
///
/// * MutableLend
///
/// # Arguments
///
/// The memory being pointed to should be a &str, and the length of the string should
/// be specified in the `valid` field.
///
/// # Return Values
///
/// Memory is overwritten to contain a return value. This return value can be defined
/// as the following enum:
///
/// ```rust
/// #[repr(C)]
/// #[non_exhaustive]
/// enum ConnectResult {
/// Success(xous::CID /* connection ID */, [u32; 4] /* Disconnection token */),
/// Error(u32 /* error code */),
/// Unhandled, /* Catchall for future Results */
/// }
/// ```
TryConnect = 7,
}
#[derive(Debug, rkyv::Archive, rkyv::Serialize, rkyv::Deserialize)]