fix: is_list_ignored=false filters for network and temperature (#1037)
Use filter logic from network/sysinfo in temperature and network/heim harvesters. Previously is_list_ignored=false filter configs would silently accept every sensor and every interface.
This commit is contained in:
parent
8cc763cc1b
commit
40288c181e
|
@ -23,22 +23,17 @@ pub async fn get_network_data(
|
|||
while let Some(io) = io_data.next().await {
|
||||
if let Ok(io) = io {
|
||||
let to_keep = if let Some(filter) = filter {
|
||||
if filter.is_list_ignored {
|
||||
let mut ret = true;
|
||||
for r in &filter.list {
|
||||
if r.is_match(io.interface()) {
|
||||
ret = false;
|
||||
break;
|
||||
}
|
||||
let mut ret = filter.is_list_ignored;
|
||||
for r in &filter.list {
|
||||
if r.is_match(io.interface()) {
|
||||
ret = !filter.is_list_ignored;
|
||||
break;
|
||||
}
|
||||
ret
|
||||
} else {
|
||||
true
|
||||
}
|
||||
ret
|
||||
} else {
|
||||
true
|
||||
};
|
||||
|
||||
if to_keep {
|
||||
// TODO: Use bytes as the default instead, perhaps?
|
||||
// Since you might have to do a double conversion (bytes -> bits -> bytes) in some cases;
|
||||
|
|
|
@ -47,18 +47,14 @@ fn convert_celsius_to_fahrenheit(celsius: f32) -> f32 {
|
|||
|
||||
fn is_temp_filtered(filter: &Option<Filter>, text: &str) -> bool {
|
||||
if let Some(filter) = filter {
|
||||
if filter.is_list_ignored {
|
||||
let mut ret = true;
|
||||
for r in &filter.list {
|
||||
if r.is_match(text) {
|
||||
ret = false;
|
||||
break;
|
||||
}
|
||||
let mut ret = filter.is_list_ignored;
|
||||
for r in &filter.list {
|
||||
if r.is_match(text) {
|
||||
ret = !filter.is_list_ignored;
|
||||
break;
|
||||
}
|
||||
ret
|
||||
} else {
|
||||
true
|
||||
}
|
||||
ret
|
||||
} else {
|
||||
true
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue