itcmd/auxstats: improve network device name matcher in Linux - plan9port - [fork] Plan 9 from user space Err mx1.adamsgaard.dk 70 hgit clone git://src.adamsgaard.dk/plan9port URL:git://src.adamsgaard.dk/plan9port mx1.adamsgaard.dk 70 1Log /src/plan9port/log.gph mx1.adamsgaard.dk 70 1Files /src/plan9port/files.gph mx1.adamsgaard.dk 70 1Refs /src/plan9port/refs.gph mx1.adamsgaard.dk 70 1README /src/plan9port/file/README.md.gph mx1.adamsgaard.dk 70 1LICENSE /src/plan9port/file/LICENSE.gph mx1.adamsgaard.dk 70 i--- Err mx1.adamsgaard.dk 70 1commit 7b0b2065faf449f820b092afb74cf0af2dae79a3 /src/plan9port/commit/7b0b2065faf449f820b092afb74cf0af2dae79a3.gph mx1.adamsgaard.dk 70 1parent 0ac2a105ae58e86a8d224020f0a3c43358312e66 /src/plan9port/commit/0ac2a105ae58e86a8d224020f0a3c43358312e66.gph mx1.adamsgaard.dk 70 hAuthor: Nicola Girardi URL:mailto:nicolagi@sdf.org mx1.adamsgaard.dk 70 iDate: Sun, 17 Oct 2021 19:46:13 +0100 Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 icmd/auxstats: improve network device name matcher in Linux Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 iDiffstat: Err mx1.adamsgaard.dk 70 i M src/cmd/auxstats/Linux.c | 4 +++- Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 i1 file changed, 3 insertions(+), 1 deletion(-) Err mx1.adamsgaard.dk 70 i--- Err mx1.adamsgaard.dk 70 1diff --git a/src/cmd/auxstats/Linux.c b/src/cmd/auxstats/Linux.c /src/plan9port/file/src/cmd/auxstats/Linux.c.gph mx1.adamsgaard.dk 70 it@@ -120,9 +120,11 @@ xnet(int first) Err mx1.adamsgaard.dk 70 i vlong totb, totp, tote, totin, totou, totinb, totoub, b, p, e, in, ou, inb, oub; Err mx1.adamsgaard.dk 70 i char *q; Err mx1.adamsgaard.dk 70 i static int fd = -1; Err mx1.adamsgaard.dk 70 i+ static Reprog *netdev = nil; Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 i if(first){ Err mx1.adamsgaard.dk 70 i fd = open("/proc/net/dev", OREAD); Err mx1.adamsgaard.dk 70 i+ netdev = regcomp("^(eth[0-9]+|wlan[0-9]+|enp[0-9]+s[0-9]+f[0-9]+|wlp[0-9]+s[0-9]+)$"); Err mx1.adamsgaard.dk 70 i return; Err mx1.adamsgaard.dk 70 i } Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 it@@ -141,7 +143,7 @@ xnet(int first) Err mx1.adamsgaard.dk 70 i tokens(i); Err mx1.adamsgaard.dk 70 i if(ntok < 8+8) Err mx1.adamsgaard.dk 70 i continue; Err mx1.adamsgaard.dk 70 i- if(strncmp(tok[0], "eth", 3) != 0 && strncmp(tok[0], "wlan", 4) != 0) Err mx1.adamsgaard.dk 70 i+ if(regexec(netdev, tok[0], nil, 0) != 1) Err mx1.adamsgaard.dk 70 i continue; Err mx1.adamsgaard.dk 70 i inb = atoll(tok[1]); Err mx1.adamsgaard.dk 70 i oub = atoll(tok[9]); Err mx1.adamsgaard.dk 70 .