pub struct Limit<'a> {
pub family: NfFamily,
pub table: Cow<'a, str>,
pub name: Cow<'a, str>,
pub handle: Option<u32>,
pub rate: Option<u32>,
pub per: Option<NfTimeUnit>,
pub burst: Option<u32>,
pub unit: Option<LimitUnit>,
pub inv: Option<bool>,
}Expand description
This object represents a named limit.
A limit uses a [token bucket](Token bucket) filter to match packets:
- only until its rate is exceeded; or
- only after its rate is exceeded, if defined as an over limit.
(Limit): https://wiki.nftables.org/wiki-nftables/index.php/Limits (Token bucket): https://en.wikipedia.org/wiki/Token_bucket
Fields§
§family: NfFamilyThe table’s family.
table: Cow<'a, str>The table’s name.
name: Cow<'a, str>The limit’s name.
handle: Option<u32>The limit’s handle. In input, it is used by the delete command only.
rate: Option<u32>The limit’s rate value.
per: Option<NfTimeUnit>Time unit to apply the limit to, e.g. “week”, “day”, “hour”, etc.
If omitted, defaults to “second”.
burst: Option<u32>The limit’s burst value. If omitted, defaults to 0.
unit: Option<LimitUnit>Unit of rate and burst values. If omitted, defaults to “packets”.
inv: Option<bool>If true, match if limit was exceeded. If omitted, defaults to false.
Trait Implementations§
Source§impl<'de, 'a> Deserialize<'de> for Limit<'a>
impl<'de, 'a> Deserialize<'de> for Limit<'a>
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
Source§impl<'a> JsonSchema for Limit<'a>
impl<'a> JsonSchema for Limit<'a>
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreimpl<'a> Eq for Limit<'a>
impl<'a> StructuralPartialEq for Limit<'a>
Auto Trait Implementations§
impl<'a> Freeze for Limit<'a>
impl<'a> RefUnwindSafe for Limit<'a>
impl<'a> Send for Limit<'a>
impl<'a> Sync for Limit<'a>
impl<'a> Unpin for Limit<'a>
impl<'a> UnwindSafe for Limit<'a>
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