Struct puffin::agent::AgentDescriptor
source · pub struct AgentDescriptor {
pub name: AgentName,
pub tls_version: TLSVersion,
pub typ: AgentType,
pub try_reuse: bool,
pub client_authentication: bool,
pub server_authentication: bool,
}
Expand description
AgentDescriptor
s act like a blueprint to spawn Agent
s with a corresponding server or
client role and a specific TLs version. Essentially they are an Agent
without a stream.
The difference between an AgentDescriptor
and a crate::put::PutDescriptor
is that
values of the AgentDescriptor
are required for seed traces to succeed. They are the same for
every invocation of the seed. Values in the crate::put::PutDescriptor
are supposed to
differ between invocations.
Fields§
§name: AgentName
§tls_version: TLSVersion
§typ: AgentType
Whether the agent which holds this descriptor is a server.
try_reuse: bool
Whether we want to try to reuse a previous agent. This is needed for TLS session resumption as openssl agents rotate ticket keys if they are recreated.
client_authentication: bool
If agent is a server: Make client auth. a requirement. If agent is a client: Send a static certificate.
Default: false
server_authentication: bool
If agent is a server: No effect, servers always send certificates in TLS. If agent is a client: Make server auth. a requirement.
Default: true
Implementations§
source§impl AgentDescriptor
impl AgentDescriptor
pub fn new_reusable_server(name: AgentName, tls_version: TLSVersion) -> Self
pub fn new_reusable_client(name: AgentName, tls_version: TLSVersion) -> Self
pub fn new_server(name: AgentName, tls_version: TLSVersion) -> Self
pub fn new_client(name: AgentName, tls_version: TLSVersion) -> Self
Trait Implementations§
source§impl Clone for AgentDescriptor
impl Clone for AgentDescriptor
source§fn clone(&self) -> AgentDescriptor
fn clone(&self) -> AgentDescriptor
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for AgentDescriptor
impl Debug for AgentDescriptor
source§impl Default for AgentDescriptor
impl Default for AgentDescriptor
source§impl<'de> Deserialize<'de> for AgentDescriptor
impl<'de> Deserialize<'de> for AgentDescriptor
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl Hash for AgentDescriptor
impl Hash for AgentDescriptor
source§impl PartialEq for AgentDescriptor
impl PartialEq for AgentDescriptor
source§impl Serialize for AgentDescriptor
impl Serialize for AgentDescriptor
impl Eq for AgentDescriptor
impl StructuralPartialEq for AgentDescriptor
Auto Trait Implementations§
impl Freeze for AgentDescriptor
impl RefUnwindSafe for AgentDescriptor
impl Send for AgentDescriptor
impl Sync for AgentDescriptor
impl Unpin for AgentDescriptor
impl UnwindSafe for AgentDescriptor
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
§impl<T> CloneAny for T
impl<T> CloneAny for T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<Tail, T> Prepend<T> for Tail
impl<Tail, T> Prepend<T> for Tail
§type PreprendResult = Tail
type PreprendResult = Tail
TupleList
], of an [Prepend::prepend()
] call,
including the prepended entry.