Skip to content

Commit

Permalink
xous-api-names: add TryConnect
Browse files Browse the repository at this point in the history
This is a non-blocking version of Connect that is fallible.

Signed-off-by: Sean Cross <[email protected]>
  • Loading branch information
xobs committed Nov 7, 2022
1 parent 1bc39cd commit 3ca57bc
Showing 1 changed file with 28 additions and 0 deletions.
28 changes: 28 additions & 0 deletions api/xous-api-names/src/api.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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)]
Expand Down

0 comments on commit 3ca57bc

Please sign in to comment.