pub struct MirrorDiscoveryLimits {
pub max_response_bytes: usize,
pub max_mirrors: usize,
}Expand description
What: Hold explicit bounds for caller-client mirror-status discovery.
Inputs:
- Constructed directly or with
MirrorDiscoveryLimits::default.
Output:
- Maximum response bytes and accepted mirror rows for one discovery request.
Details:
- Bounds apply before JSON parsing and while accepting valid rows, keeping remote endpoint responses from causing unbounded resource use.
Fields§
§max_response_bytes: usizeMaximum response-body bytes accepted before JSON parsing.
max_mirrors: usizeMaximum valid mirror rows returned to the caller.
Trait Implementations§
Source§impl Clone for MirrorDiscoveryLimits
impl Clone for MirrorDiscoveryLimits
Source§fn clone(&self) -> MirrorDiscoveryLimits
fn clone(&self) -> MirrorDiscoveryLimits
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for MirrorDiscoveryLimits
Source§impl Debug for MirrorDiscoveryLimits
impl Debug for MirrorDiscoveryLimits
Source§impl Default for MirrorDiscoveryLimits
impl Default for MirrorDiscoveryLimits
Source§fn default() -> Self
fn default() -> Self
What: Provide conservative default bounds for one mirror-status request.
Inputs: None.
Output:
- A 512 KiB response bound and 128 returned mirrors.
Details:
- Callers can choose tighter limits for constrained environments or larger explicit limits when their application has reviewed the cost.
Source§impl<'de> Deserialize<'de> for MirrorDiscoveryLimits
impl<'de> Deserialize<'de> for MirrorDiscoveryLimits
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for MirrorDiscoveryLimits
Source§impl PartialEq for MirrorDiscoveryLimits
impl PartialEq for MirrorDiscoveryLimits
Source§impl Serialize for MirrorDiscoveryLimits
impl Serialize for MirrorDiscoveryLimits
impl StructuralPartialEq for MirrorDiscoveryLimits
Auto Trait Implementations§
impl Freeze for MirrorDiscoveryLimits
impl RefUnwindSafe for MirrorDiscoveryLimits
impl Send for MirrorDiscoveryLimits
impl Sync for MirrorDiscoveryLimits
impl Unpin for MirrorDiscoveryLimits
impl UnsafeUnpin for MirrorDiscoveryLimits
impl UnwindSafe for MirrorDiscoveryLimits
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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
Compare self to
key and return true if they are equal.