From 348cdbe8d327c4aa90debde7799e7e0764943715 Mon Sep 17 00:00:00 2001 From: Adrian Schmutzler Date: Wed, 25 Jul 2018 14:24:10 +0200 Subject: [PATCH] nodewatcher: Change mechanism for client device detection MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is simpler than the previous approach and does not rely on parsing. This fixes: - Interfaces being accounted for multiple times for certain devices - Errors when output of bridge function changes (as with the current OpenWrt master) Signed-off-by: Adrian Schmutzler Reviewed-by: Tim Niemeyer Reviewed-by: Fabian Bläse --- src/packages/fff/fff-nodewatcher/Makefile | 2 +- src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/packages/fff/fff-nodewatcher/Makefile b/src/packages/fff/fff-nodewatcher/Makefile index 633ec71b..12ccb0f6 100644 --- a/src/packages/fff/fff-nodewatcher/Makefile +++ b/src/packages/fff/fff-nodewatcher/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=fff-nodewatcher -PKG_VERSION:=47 +PKG_VERSION:=48 PKG_RELEASE:=1 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME) diff --git a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher index 3b605008..4eebf20d 100755 --- a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher +++ b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher @@ -2,7 +2,7 @@ # Netmon Nodewatcher (C) 2010-2012 Freifunk Oldenburg # License; GPL v3 -SCRIPT_VERSION="47" +SCRIPT_VERSION="48" test -f /tmp/started || exit @@ -260,7 +260,7 @@ crawl() { #CLIENTS client_count=0 dataclient="" - CLIENT_INTERFACES=$(bridge link | awk '$2 !~/^bat/{ printf $2" " }') + CLIENT_INTERFACES=$(ls "/sys/class/net/$MESH_INTERFACE/brif" | grep -v '^bat') for clientif in ${CLIENT_INTERFACES}; do local cc=$(bridge fdb show br "$MESH_INTERFACE" brport "$clientif" | grep -v self | grep -v permanent -c) client_count=$((client_count + cc))