diff --git a/src/util/firewall.rs b/src/util/firewall.rs index cbba3e5..9ee4131 100644 --- a/src/util/firewall.rs +++ b/src/util/firewall.rs @@ -62,6 +62,12 @@ impl Firewall { unsafe { rules.Remove(&BSTR::from(name)) }?; Ok(()) } + + pub fn is_blocked(&self, name: &str) -> Result> { + let rules = unsafe { self.policy.Rules() }?; + let rule_exists = unsafe { rules.Item(&BSTR::from(name)) }.is_ok(); + Ok(rule_exists) + } } pub enum RuleMode {