pub struct PreflightResponse {
pub request: PreflightRequest,
pub agent_state: CounterSigningAgentState,
pub signature: Signature,
}
Expand description
Every agent must send back a preflight response. All the preflight response data is signed by each agent and included in the session data.
Fields§
§request: PreflightRequest
The request this is a response to.
agent_state: CounterSigningAgentState
The agent must provide their current chain state, state their position in the preflight and sign everything.
signature: Signature
The signature of the preflight resonse.
Implementations§
source§impl PreflightResponse
impl PreflightResponse
sourcepub fn try_new(
request: PreflightRequest,
agent_state: CounterSigningAgentState,
signature: Signature
) -> Result<PreflightResponse, CounterSigningError>
pub fn try_new(
request: PreflightRequest,
agent_state: CounterSigningAgentState,
signature: Signature
) -> Result<PreflightResponse, CounterSigningError>
Fallible constructor.
sourcepub fn check_integrity(&self) -> Result<(), CounterSigningError>
pub fn check_integrity(&self) -> Result<(), CounterSigningError>
Combined preflight response validation call.
sourcepub fn encode_fields_for_signature(
request: &PreflightRequest,
agent_state: &CounterSigningAgentState
) -> Result<Vec<u8, Global>, SerializedBytesError>
pub fn encode_fields_for_signature(
request: &PreflightRequest,
agent_state: &CounterSigningAgentState
) -> Result<Vec<u8, Global>, SerializedBytesError>
Serialization for signing of the signable field data only.
sourcepub fn encode_for_signature(
&self
) -> Result<Vec<u8, Global>, SerializedBytesError>
pub fn encode_for_signature(
&self
) -> Result<Vec<u8, Global>, SerializedBytesError>
Consistent serialization for the preflight response so it can be signed and the signatures verified.
sourcepub fn request(&self) -> &PreflightRequest
pub fn request(&self) -> &PreflightRequest
Request accessor.
sourcepub fn request_mut(&mut self) -> &mut PreflightRequest
pub fn request_mut(&mut self) -> &mut PreflightRequest
Mutable request accessor for testing.
sourcepub fn agent_state(&self) -> &CounterSigningAgentState
pub fn agent_state(&self) -> &CounterSigningAgentState
Agent state accessor.
sourcepub fn agent_state_mut(&mut self) -> &mut CounterSigningAgentState
pub fn agent_state_mut(&mut self) -> &mut CounterSigningAgentState
Mutable agent state accessor for testing.
sourcepub fn signature_mut(&mut self) -> &mut Signature
pub fn signature_mut(&mut self) -> &mut Signature
Mutable signature accessor for testing.
Trait Implementations§
source§impl<'arbitrary> Arbitrary<'arbitrary> for PreflightResponse
impl<'arbitrary> Arbitrary<'arbitrary> for PreflightResponse
source§fn arbitrary(
u: &mut Unstructured<'arbitrary>
) -> Result<PreflightResponse, Error>
fn arbitrary(
u: &mut Unstructured<'arbitrary>
) -> Result<PreflightResponse, Error>
Generate an arbitrary value of
Self
from the given unstructured data. Read moresource§fn arbitrary_take_rest(
u: Unstructured<'arbitrary>
) -> Result<PreflightResponse, Error>
fn arbitrary_take_rest(
u: Unstructured<'arbitrary>
) -> Result<PreflightResponse, Error>
Generate an arbitrary value of
Self
from the entirety of the given
unstructured data. Read moresource§impl Clone for PreflightResponse
impl Clone for PreflightResponse
source§fn clone(&self) -> PreflightResponse
fn clone(&self) -> PreflightResponse
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for PreflightResponse
impl Debug for PreflightResponse
source§impl<'de> Deserialize<'de> for PreflightResponse
impl<'de> Deserialize<'de> for PreflightResponse
source§fn deserialize<__D>(
__deserializer: __D
) -> Result<PreflightResponse, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<PreflightResponse, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Serialize for PreflightResponse
impl Serialize for PreflightResponse
source§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl RefUnwindSafe for PreflightResponse
impl Send for PreflightResponse
impl Sync for PreflightResponse
impl Unpin for PreflightResponse
impl UnwindSafe for PreflightResponse
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
§impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
§fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer
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>
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.§impl<T> Upcastable for Twhere
T: Any + Send + Sync + 'static,
impl<T> Upcastable for Twhere
T: Any + Send + Sync + 'static,
§fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
§fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref