fix: zero hop (#96)

This commit is contained in:
Lowder
2026-09-27 16:43:50 +05:00
parent a0ba3a806f
commit 67a2beccc5
3 changed files with 20 additions and 3 deletions
Generated
+1 -1
View File
@@ -2488,7 +2488,7 @@ dependencies = [
[[package]]
name = "probe"
version = "0.6.6"
version = "0.6.7"
dependencies = [
"anyhow",
"clap",
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "probe"
version = "0.6.6"
version = "0.6.7"
edition = "2024"
license-file = "../LICENSE"
description = "Dynamic network probe daemon for Cheburcheck"
+18 -1
View File
@@ -512,7 +512,7 @@ fn dpi_hop_from_result(result: &dpi_hop::DpiHopProbeResult) -> Option<u8> {
);
return None;
}
result.max_icmp_time_exceeded_ttl
Some(result.max_icmp_time_exceeded_ttl.unwrap_or(0))
}
async fn wait_for_connection(eventloop: &mut rumqttc::EventLoop) {
@@ -770,4 +770,21 @@ mod tests {
assert_eq!(dpi_hop_from_result(&result), None);
}
}
#[test]
fn missing_icmp_time_exceeded_defaults_dpi_hop_to_zero() {
let result = dpi_hop::DpiHopProbeResult {
target: "203.0.113.10:443".parse().unwrap(),
local_addr: "192.0.2.10:45000".parse().unwrap(),
client_hello_bytes: 256,
max_icmp_time_exceeded_ttl: None,
hops: vec![dpi_hop::DpiHopProbeHop {
ttl: 1,
router: None,
outcome: dpi_hop::DpiHopProbeHopOutcome::Timeout,
}],
};
assert_eq!(dpi_hop_from_result(&result), Some(0));
}
}