pub struct HttpPeer {
pub _address: SocketAddr,
pub scheme: Scheme,
pub sni: String,
pub proxy: Option<Proxy>,
pub client_cert_key: Option<Arc<CertKey>>,
pub group_key: u64,
pub options: PeerOptions,
}Expand description
A peer representing the remote HTTP server to connect to
Fields§
§_address: SocketAddr§scheme: Scheme§sni: String§proxy: Option<Proxy>§client_cert_key: Option<Arc<CertKey>>§group_key: u64a custom field to isolate connection reuse. Requests with different group keys cannot share connections with each other.
options: PeerOptionsImplementations§
Source§impl HttpPeer
impl HttpPeer
pub fn is_tls(&self) -> bool
Sourcepub fn new<A>(address: A, tls: bool, sni: String) -> HttpPeerwhere
A: ToSocketAddrs,
pub fn new<A>(address: A, tls: bool, sni: String) -> HttpPeerwhere
A: ToSocketAddrs,
Create a new HttpPeer with the given socket address and TLS settings.
Trait Implementations§
Source§impl Peer for HttpPeer
impl Peer for HttpPeer
Source§fn address(&self) -> &SocketAddr
fn address(&self) -> &SocketAddr
The remote address to connect to
Source§fn reuse_hash(&self) -> u64
fn reuse_hash(&self) -> u64
Source§fn get_peer_options(&self) -> Option<&PeerOptions>
fn get_peer_options(&self) -> Option<&PeerOptions>
Get the additional options to connect to the peer. Read more
Source§fn get_mut_peer_options(&mut self) -> Option<&mut PeerOptions>
fn get_mut_peer_options(&mut self) -> Option<&mut PeerOptions>
Get the additional options for modification.
fn matches_fd<V>(&self, fd: V) -> boolwhere
V: AsRawFd,
Source§fn get_client_cert_key(&self) -> Option<&Arc<CertKey>>
fn get_client_cert_key(&self) -> Option<&Arc<CertKey>>
Get the client cert and key for mutual TLS if any
fn get_tracer(&self) -> Option<Tracer>
Source§fn verify_cert(&self) -> bool
fn verify_cert(&self) -> bool
Whether the TLS handshake should validate the cert of the server.
Source§fn verify_hostname(&self) -> bool
fn verify_hostname(&self) -> bool
Whether the TLS handshake should verify that the server cert matches the SNI.
Source§fn alternative_cn(&self) -> Option<&String>
fn alternative_cn(&self) -> Option<&String>
The alternative common name to use to verify the server cert. Read more
Source§fn bind_to(&self) -> Option<&BindTo>
fn bind_to(&self) -> Option<&BindTo>
Information about the local source address this connection should be bound to.
Source§fn connection_timeout(&self) -> Option<Duration>
fn connection_timeout(&self) -> Option<Duration>
How long connect() call should be wait before it returns a timeout error.
Source§fn total_connection_timeout(&self) -> Option<Duration>
fn total_connection_timeout(&self) -> Option<Duration>
How long the overall connection establishment should take before a timeout error is returned.
Source§fn idle_timeout(&self) -> Option<Duration>
fn idle_timeout(&self) -> Option<Duration>
If the connection can be reused, how long the connection should wait to be reused before it
shuts down.
Source§fn get_ca(&self) -> Option<&Arc<Box<[X509]>>>
fn get_ca(&self) -> Option<&Arc<Box<[X509]>>>
Get the CA cert to use to validate the server cert. Read more
Source§fn tcp_keepalive(&self) -> Option<&TcpKeepalive>
fn tcp_keepalive(&self) -> Option<&TcpKeepalive>
The TCP keepalive setting that should be applied to this connection
Source§fn h2_ping_interval(&self) -> Option<Duration>
fn h2_ping_interval(&self) -> Option<Duration>
The interval H2 pings to send to the server if any
Source§fn tcp_recv_buf(&self) -> Option<usize>
fn tcp_recv_buf(&self) -> Option<usize>
The size of the TCP receive buffer should be limited to. See SO_RCVBUF for more details.
Source§fn dscp(&self) -> Option<u8>
fn dscp(&self) -> Option<u8>
The DSCP value that should be applied to the send side of this connection.
See the RFC for more details.
Source§fn tcp_fast_open(&self) -> bool
fn tcp_fast_open(&self) -> bool
Whether to enable TCP fast open.
Auto Trait Implementations§
impl Freeze for HttpPeer
impl !RefUnwindSafe for HttpPeer
impl Send for HttpPeer
impl Sync for HttpPeer
impl Unpin for HttpPeer
impl !UnwindSafe for HttpPeer
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§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.
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Upcastable for T
impl<T> Upcastable for T
Source§fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
Source§fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref