pub struct AppliedDynamicRules {
pub bans: Vec<(IpAddr, u64)>,
pub unparseable_bans: Vec<String>,
pub unbans: Vec<IpAddr>,
pub unparseable_unbans: Vec<String>,
pub patterns: Vec<String>,
pub rejected_user_agents: Vec<(String, String)>,
pub emergency_activated: bool,
}Expand description
What applying one rule produced.
The stateful lands for the caller’s seams (the reference logs each of these; the outcome carries them so hosts log the returns).
Fields§
§bans: Vec<(IpAddr, u64)>ip_blacklist as (ip, duration) ban pairs that parsed.
unparseable_bans: Vec<String>ip_blacklist entries that failed to parse (reported, skipped).
unbans: Vec<IpAddr>ip_whitelist as unban addresses that parsed.
unparseable_unbans: Vec<String>ip_whitelist entries that failed to parse (reported, skipped).
patterns: Vec<String>suspicious_patterns additions for the pattern store.
rejected_user_agents: Vec<(String, String)>blocked_user_agents patterns rejected by the ReDoS validator
with the validator’s reason.
emergency_activated: boolWhether the emergency arm activated (threshold halved).
Trait Implementations§
Source§impl Clone for AppliedDynamicRules
impl Clone for AppliedDynamicRules
Source§impl Debug for AppliedDynamicRules
impl Debug for AppliedDynamicRules
Source§impl Default for AppliedDynamicRules
impl Default for AppliedDynamicRules
impl Eq for AppliedDynamicRules
Source§impl PartialEq for AppliedDynamicRules
impl PartialEq for AppliedDynamicRules
impl StructuralPartialEq for AppliedDynamicRules
Auto Trait Implementations§
impl Freeze for AppliedDynamicRules
impl RefUnwindSafe for AppliedDynamicRules
impl Send for AppliedDynamicRules
impl Sync for AppliedDynamicRules
impl Unpin for AppliedDynamicRules
impl UnsafeUnpin for AppliedDynamicRules
impl UnwindSafe for AppliedDynamicRules
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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.