diff options
author | Rosy Song <rosysong@rosinson.com> | 2018-12-29 17:31:12 +0800 |
---|---|---|
committer | Rosy Song <rosysong@rosinson.com> | 2018-12-29 17:31:12 +0800 |
commit | 076e5672adba3a7c1dca3a9e6651d5a65092e426 (patch) | |
tree | f46e6acfa8dcbb36928e31bee30b5950df756339 | |
parent | 39aa247dd2e9d9b04fae3307f9d489d602b1deef (diff) |
luci-app-nft-qos: fix monitor doesn't work when there no ipv6 support.
Signed-off-by: Rosy Song <rosysong@rosinson.com>
-rw-r--r-- | applications/luci-app-nft-qos/luasrc/controller/nft-qos.lua | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/applications/luci-app-nft-qos/luasrc/controller/nft-qos.lua b/applications/luci-app-nft-qos/luasrc/controller/nft-qos.lua index 42043505d..f7e399352 100644 --- a/applications/luci-app-nft-qos/luasrc/controller/nft-qos.lua +++ b/applications/luci-app-nft-qos/luasrc/controller/nft-qos.lua @@ -17,7 +17,12 @@ function index() end function _action_rate(rv, n) - local c = io.popen("nft list chain inet nft-qos-monitor " .. n .. " 2>/dev/null") + local has_ipv6 = nixio.fs.access("/proc/net/ipv6_route") + if has_ipv6 then + local c = io.popen("nft list chain inet nft-qos-monitor " .. n .. " 2>/dev/null") + else + local c = io.popen("nft list chain ip nft-qos-monitor " .. n .. " 2>/dev/null") + end if c then for l in c:lines() do local _, i, p, b = l:match('^%s+ip ([^%s]+) ([^%s]+) counter packets (%d+) bytes (%d+)') |