From 0102d94a532032f97b7803534657bef12f88f5e0 Mon Sep 17 00:00:00 2001 From: FujiApple Date: Sat, 13 Jul 2024 20:12:43 +0800 Subject: [PATCH] feat(report): add nat `attribute` to json report --- crates/trippy-tui/src/report/types.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/crates/trippy-tui/src/report/types.rs b/crates/trippy-tui/src/report/types.rs index 49e805e9..7171db22 100644 --- a/crates/trippy-tui/src/report/types.rs +++ b/crates/trippy-tui/src/report/types.rs @@ -2,6 +2,7 @@ use itertools::Itertools; use serde::{Serialize, Serializer}; use std::fmt::{Display, Formatter}; use std::net::IpAddr; +use trippy_core::NatStatus; use trippy_dns::Resolver; #[derive(Serialize)] @@ -42,6 +43,7 @@ pub struct Hop { pub jmax: f64, #[serde(serialize_with = "fixed_width")] pub jinta: f64, + pub nat: Option, } impl From<(&trippy_core::Hop, &R)> for Hop { @@ -64,6 +66,11 @@ impl From<(&trippy_core::Hop, &R)> for Hop { javg: value.javg_ms(), jmax: value.jmax_ms().unwrap_or_default(), jinta: value.jinta(), + nat: match value.last_nat_status() { + NatStatus::NotApplicable => None, + NatStatus::NotDetected => Some(false), + NatStatus::Detected => Some(true), + }, } } }