pub struct ScmpScionSocket { /* private fields */ }Expand description
A SCMP SCION socket.
Implementations§
Source§impl ScmpScionSocket
impl ScmpScionSocket
Sourcepub async fn send_to_via(
&self,
message: ScmpMessage,
destination: ScionAddr,
path: &ScionPath,
) -> Result<(), ScionSocketSendError>
pub async fn send_to_via( &self, message: ScmpMessage, destination: ScionAddr, path: &ScionPath, ) -> Result<(), ScionSocketSendError>
Send a SCMP message to the destination via the given path.
Sourcepub async fn recv_from_with_path(
&self,
) -> Result<(Box<ScmpPayloadView>, ScionAddr, ScionPath), ScionSocketReceiveError>
pub async fn recv_from_with_path( &self, ) -> Result<(Box<ScmpPayloadView>, ScionAddr, ScionPath), ScionSocketReceiveError>
Receive a SCMP message with the sender and path.
Sourcepub async fn recv_from(
&self,
) -> Result<(Box<ScmpPayloadView>, ScionAddr), ScionSocketReceiveError>
pub async fn recv_from( &self, ) -> Result<(Box<ScmpPayloadView>, ScionAddr), ScionSocketReceiveError>
Receive a SCMP message with the sender.
Sourcepub fn local_addr(&self) -> ScionSocketIpAddr
pub fn local_addr(&self) -> ScionSocketIpAddr
Return the local socket address.
Sourcepub fn snap_data_plane(&self) -> Option<SocketAddr>
pub fn snap_data_plane(&self) -> Option<SocketAddr>
The SNAP data plane the socket is connected to (if SNAP underlay is used).
Auto Trait Implementations§
impl !RefUnwindSafe for ScmpScionSocket
impl !UnwindSafe for ScmpScionSocket
impl Freeze for ScmpScionSocket
impl Send for ScmpScionSocket
impl Sync for ScmpScionSocket
impl Unpin for ScmpScionSocket
impl UnsafeUnpin for ScmpScionSocket
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§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>
Wrap the input message
T in a tonic::Request