[PATCH] nodewatcher: Change mechanism for client device detection
Fabian Bläse
fabian at blaese.de
Di Jul 24 08:40:29 CEST 2018
Hallo Adrian,
Es gibt eine Variable “MESH_INTERFACE”, die sollte da verwendet werden..
Außerdem: Das Verhalten wird nicht wirklich geändert, denn die Clientzahl weiterer (nicht-Client) Interfaces wird durch das “br $MESH_INTERFACE” im bridge fdb gar nicht gezählt.
Ansonsten gefällt mir die Lösung sehr gut, aber ich sehe nicht, warum man den Output von stderr im ls nach /dev/null haben möchte.
Gruß
Fabian
> On 23. Jul 2018, at 15:39, Adrian Schmutzler <freifunk at adrianschmutzler.de> wrote:
>
> 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)
>
> Behavior change: Only br-mesh is evaluated, in contrast to all
> bridge devices as before.
>
> Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
>
> Tested-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
> ---
> 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 633ec71..12ccb0f 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 3b60500..f655e5e 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/br-mesh/brif 2>/dev/null | 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))
> --
> 2.11.0
>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : signature.asc
Dateityp : application/pgp-signature
Dateigröße : 833 bytes
Beschreibung: Message signed with OpenPGP
URL : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20180724/12559020/attachment.sig>
Mehr Informationen über die Mailingliste franken-dev