aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNicola Girardi <nicolagi@sdf.org>2021-10-17 19:46:13 +0100
committerDan Cross <crossd@gmail.com>2021-10-18 16:41:11 -0400
commit7b0b2065faf449f820b092afb74cf0af2dae79a3 (patch)
tree03057cd49537b471da36767f658f33dbf108bcc8 /src
parent0ac2a105ae58e86a8d224020f0a3c43358312e66 (diff)
cmd/auxstats: improve network device name matcher in Linux
Diffstat (limited to 'src')
-rw-r--r--src/cmd/auxstats/Linux.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/cmd/auxstats/Linux.c b/src/cmd/auxstats/Linux.c
index e4026551..74491ac2 100644
--- a/src/cmd/auxstats/Linux.c
+++ b/src/cmd/auxstats/Linux.c
@@ -120,9 +120,11 @@ xnet(int first)
vlong totb, totp, tote, totin, totou, totinb, totoub, b, p, e, in, ou, inb, oub;
char *q;
static int fd = -1;
+ static Reprog *netdev = nil;
if(first){
fd = open("/proc/net/dev", OREAD);
+ netdev = regcomp("^(eth[0-9]+|wlan[0-9]+|enp[0-9]+s[0-9]+f[0-9]+|wlp[0-9]+s[0-9]+)$");
return;
}
@@ -141,7 +143,7 @@ xnet(int first)
tokens(i);
if(ntok < 8+8)
continue;
- if(strncmp(tok[0], "eth", 3) != 0 && strncmp(tok[0], "wlan", 4) != 0)
+ if(regexec(netdev, tok[0], nil, 0) != 1)
continue;
inb = atoll(tok[1]);
oub = atoll(tok[9]);