From 433b9e451067b9e3dbe6d1519782d22bedcc3f6d Mon Sep 17 00:00:00 2001
From: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Date: Sun, 2 Dec 2018 14:26:08 +0100
Subject: [PATCH] show_info: Add VPN peer lists for fastd/L2TP

This shows the configured peers for fastd and L2TP.
Note that "configured" does not tell whether they are working.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Reviewed-by: Robert Langhammer <rlanghammer@web.de>
---
 .../fff/fff-support/files/usr/sbin/show_info  | 27 +++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/src/packages/fff/fff-support/files/usr/sbin/show_info b/src/packages/fff/fff-support/files/usr/sbin/show_info
index 86c01f01..7a75966d 100755
--- a/src/packages/fff/fff-support/files/usr/sbin/show_info
+++ b/src/packages/fff/fff-support/files/usr/sbin/show_info
@@ -3,6 +3,7 @@
 . /etc/firmware_release
 . /lib/functions/fff/evalhoodinfo
 . /lib/functions/fff/evalbytes
+. /lib/functions.sh # required for config_load and config_foreach
 
 board_name=$(uci -q get board.model.name)
 
@@ -133,6 +134,32 @@ echo "Gesendet: $(cat /sys/class/net/br-mesh/statistics/tx_bytes 2> /dev/null |
 echo "IPv4 Adressen: $(addr 4 br-mesh)"
 echo "IPv6 Adressen: $(addr 6 br-mesh)"
 
+echo ""
+if [ -d /etc/fastd/fff/peers ]; then
+	echo "-> FASTD: Peer list"
+	for fastdpeer in $(ls /etc/fastd/fff/peers); do
+		echo "${fastdpeer}: $(grep "remote" "/etc/fastd/fff/peers/$fastdpeer" | sed "s/remote //")"
+	done
+else
+	echo "-> FASTD"
+	echo "No FASTD peers available"
+fi
+
+function printL2TP() {
+	local broker="$1"
+	echo "${broker}: $(uci -q get "tunneldigger.$broker.address")"
+}
+
+echo ""
+if [ -s /etc/config/tunneldigger ]; then
+	echo "-> L2TP: Peer list"
+	config_load tunneldigger
+	config_foreach printL2TP broker
+else
+	echo "-> L2TP"
+	echo "No L2TP peers available"
+fi
+
 echo ""
 echo "-> Netz: WAN"
 echo "Internet vorhanden: ${internet_active}"
-- 
GitLab