[PATCH iproute2] misc: make the pattern matching case-insensitive
From: Anton Danilov <hidden>
Date: 2020-07-14 13:24:05
Subsystem:
the rest · Maintainer:
Linus Torvalds
To improve the usability better use case-insensitive pattern-matching in ifstat, nstat and ss tools. Signed-off-by: Anton Danilov <redacted> --- man/man8/rtacct.8 | 7 +++++++ misc/ifstat.c | 2 +- misc/nstat.c | 2 +- misc/ss.c | 2 +- 4 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/man/man8/rtacct.8 b/man/man8/rtacct.8
index ccdbf6ca..988a6d1b 100644
--- a/man/man8/rtacct.8
+++ b/man/man8/rtacct.8@@ -14,6 +14,13 @@ and .B rtacct are simple tools to monitor kernel snmp counters and network interface statistics. +.B nstat +can filter kernel snmp counters by name with one or several specified wildcards. Wildcards are case-insensitive and can include special symbols +.B ? +and +.B * +. + .SH OPTIONS .B \-h, \-\-help Print help
diff --git a/misc/ifstat.c b/misc/ifstat.c
index 60efe6cb..03327af8 100644
--- a/misc/ifstat.c
+++ b/misc/ifstat.c@@ -104,7 +104,7 @@ static int match(const char *id) return 1; for (i = 0; i < npatterns; i++) { - if (!fnmatch(patterns[i], id, 0)) + if (!fnmatch(patterns[i], id, FNM_CASEFOLD)) return 1; } return 0;
diff --git a/misc/nstat.c b/misc/nstat.c
index 425e75ef..88f52eaf 100644
--- a/misc/nstat.c
+++ b/misc/nstat.c@@ -114,7 +114,7 @@ static int match(const char *id) return 1; for (i = 0; i < npatterns; i++) { - if (!fnmatch(patterns[i], id, 0)) + if (!fnmatch(patterns[i], id, FNM_CASEFOLD)) return 1; } return 0;
diff --git a/misc/ss.c b/misc/ss.c
index f3d01812..5aa10e4a 100644
--- a/misc/ss.c
+++ b/misc/ss.c@@ -1670,7 +1670,7 @@ static int unix_match(const inet_prefix *a, const inet_prefix *p) return 1; if (addr == NULL) addr = ""; - return !fnmatch(pattern, addr, 0); + return !fnmatch(pattern, addr, FNM_CASEFOLD); } static int run_ssfilter(struct ssfilter *f, struct sockstat *s)
--
2.26.2