pub struct OscoreEdhocHandler<H: Handler, Crypto: Crypto, CryptoFactory: Fn() -> Crypto, SSC: ServerSecurityConfig, RNG: RngCore + CryptoRng> { /* private fields */ }
Expand description
A CoAP handler wrapping inner resources, and adding EDHOC and OSCORE and ACE support.
While the ACE (authz-info) and EDHOC parts could be implemented as a handler that is to be added into the tree, the OSCORE part needs to wrap the inner handler anyway, and EDHOC and OSCORE are intertwined rather strongly in processing the EDHOC option.
Implementations§
Source§impl<H: Handler, Crypto: Crypto, CryptoFactory: Fn() -> Crypto, SSC: ServerSecurityConfig, RNG: RngCore + CryptoRng> OscoreEdhocHandler<H, Crypto, CryptoFactory, SSC, RNG>
impl<H: Handler, Crypto: Crypto, CryptoFactory: Fn() -> Crypto, SSC: ServerSecurityConfig, RNG: RngCore + CryptoRng> OscoreEdhocHandler<H, Crypto, CryptoFactory, SSC, RNG>
Trait Implementations§
Source§impl<H: Handler, Crypto: Crypto, CryptoFactory: Fn() -> Crypto, SSC: ServerSecurityConfig, RNG: RngCore + CryptoRng> Handler for OscoreEdhocHandler<H, Crypto, CryptoFactory, SSC, RNG>
impl<H: Handler, Crypto: Crypto, CryptoFactory: Fn() -> Crypto, SSC: ServerSecurityConfig, RNG: RngCore + CryptoRng> Handler for OscoreEdhocHandler<H, Crypto, CryptoFactory, SSC, RNG>
Source§type RequestData = OrInner<OwnRequestData<Result<<H as Handler>::RequestData, <H as Handler>::ExtractRequestError>>, AuthorizationChecked<<H as Handler>::RequestData>>
type RequestData = OrInner<OwnRequestData<Result<<H as Handler>::RequestData, <H as Handler>::ExtractRequestError>>, AuthorizationChecked<<H as Handler>::RequestData>>
Source§type ExtractRequestError = OrInner<Error, <H as Handler>::ExtractRequestError>
type ExtractRequestError = OrInner<Error, <H as Handler>::ExtractRequestError>
Error type for
extract_request_data()
. Read moreSource§type BuildResponseError<M: MinimalWritableMessage> = OrInner<Result<Error, <M as MinimalWritableMessage>::UnionError>, <H as Handler>::BuildResponseError<M>>
type BuildResponseError<M: MinimalWritableMessage> = OrInner<Result<Error, <M as MinimalWritableMessage>::UnionError>, <H as Handler>::BuildResponseError<M>>
Error type for writing response data. Read more
Source§fn extract_request_data<M: ReadableMessage>(
&mut self,
request: &M,
) -> Result<Self::RequestData, Self::ExtractRequestError>
fn extract_request_data<M: ReadableMessage>( &mut self, request: &M, ) -> Result<Self::RequestData, Self::ExtractRequestError>
Process an incoming request. Read more
Source§fn estimate_length(&mut self, req: &Self::RequestData) -> usize
fn estimate_length(&mut self, req: &Self::RequestData) -> usize
Estimate an upper bound for the number of bytes in the response Read more
Auto Trait Implementations§
impl<H, Crypto, CryptoFactory, SSC, RNG> Freeze for OscoreEdhocHandler<H, Crypto, CryptoFactory, SSC, RNG>
impl<H, Crypto, CryptoFactory, SSC, RNG> RefUnwindSafe for OscoreEdhocHandler<H, Crypto, CryptoFactory, SSC, RNG>where
SSC: RefUnwindSafe,
H: RefUnwindSafe,
CryptoFactory: RefUnwindSafe,
RNG: RefUnwindSafe,
<SSC as ServerSecurityConfig>::Scope: RefUnwindSafe,
Crypto: RefUnwindSafe,
impl<H, Crypto, CryptoFactory, SSC, RNG> !Send for OscoreEdhocHandler<H, Crypto, CryptoFactory, SSC, RNG>
impl<H, Crypto, CryptoFactory, SSC, RNG> !Sync for OscoreEdhocHandler<H, Crypto, CryptoFactory, SSC, RNG>
impl<H, Crypto, CryptoFactory, SSC, RNG> Unpin for OscoreEdhocHandler<H, Crypto, CryptoFactory, SSC, RNG>
impl<H, Crypto, CryptoFactory, SSC, RNG> UnwindSafe for OscoreEdhocHandler<H, Crypto, CryptoFactory, SSC, RNG>where
SSC: UnwindSafe,
H: UnwindSafe,
CryptoFactory: UnwindSafe,
RNG: UnwindSafe,
<SSC as ServerSecurityConfig>::Scope: UnwindSafe,
Crypto: UnwindSafe,
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