git: ae4fb190fd4a - main - netstat: split ipsec and ipsec6 statistics in libxo
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 05 Oct 2021 09:44:40 UTC
The branch main has been updated by mjg:
URL: https://cgit.FreeBSD.org/src/commit/?id=ae4fb190fd4a21649c4562fc6cd81bba4da222a4
commit ae4fb190fd4a21649c4562fc6cd81bba4da222a4
Author: Mateusz Guzik <mjg@FreeBSD.org>
AuthorDate: 2021-10-05 09:42:58 +0000
Commit: Mateusz Guzik <mjg@FreeBSD.org>
CommitDate: 2021-10-05 09:42:58 +0000
netstat: split ipsec and ipsec6 statistics in libxo
In particular fixes --libxo json
PR: 254673
Reported by: j.vandeville@gmail.com
Sponsored by: Rubicon Communications, LLC ("Netgate")
---
usr.bin/netstat/ipsec.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/usr.bin/netstat/ipsec.c b/usr.bin/netstat/ipsec.c
index e57d7f4905b5..029dd64f3b35 100644
--- a/usr.bin/netstat/ipsec.c
+++ b/usr.bin/netstat/ipsec.c
@@ -154,12 +154,10 @@ static struct val2str ipsec_compnames[] = {
{ -1, NULL },
};
-static void print_ipsecstats(const struct ipsecstat *ipsecstat);
-
static void
-print_ipsecstats(const struct ipsecstat *ipsecstat)
+print_ipsecstats(const char *tag, const struct ipsecstat *ipsecstat)
{
- xo_open_container("ipsec-statistics");
+ xo_open_container(tag);
#define p(f, m) if (ipsecstat->f || sflag <= 1) \
xo_emit(m, (uintmax_t)ipsecstat->f, plural(ipsecstat->f))
@@ -194,27 +192,30 @@ print_ipsecstats(const struct ipsecstat *ipsecstat)
"{N:/mbuf%s inserted during makespace}\n");
#undef p2
#undef p
- xo_close_container("ipsec-statistics");
+ xo_close_container(tag);
}
void
ipsec_stats(u_long off, const char *name, int af1 __unused, int proto __unused)
{
struct ipsecstat ipsecstat;
+ const char *tag;
if (strcmp(name, "ipsec6") == 0) {
if (fetch_stats("net.inet6.ipsec6.ipsecstats", off,&ipsecstat,
sizeof(ipsecstat), kread_counters) != 0)
return;
+ tag = "ipsec6-statistics";
} else {
if (fetch_stats("net.inet.ipsec.ipsecstats", off, &ipsecstat,
sizeof(ipsecstat), kread_counters) != 0)
return;
+ tag = "ipsec-statistics";
}
xo_emit("{T:/%s}:\n", name);
- print_ipsecstats(&ipsecstat);
+ print_ipsecstats(tag, &ipsecstat);
}