[PATCH 2/2] fff-fastd: throw the outsourced part of vpn-select into the fff-fastd package
Robert Langhammer
rlanghammer at web.de
Mi Jun 17 23:46:52 CEST 2020
This is the former configuration and start-stop part from vpn-select for fastd.
Signed-off-by: Robert Langhammer <rlanghammer at web.de>
---
.../fff-fastd/files/etc/vpn-select.d/fastd | 33 +++++++++++++++++++
1 file changed, 33 insertions(+)
create mode 100644 src/packages/fff/fff-fastd/files/etc/vpn-select.d/fastd
diff --git a/src/packages/fff/fff-fastd/files/etc/vpn-select.d/fastd b/src/packages/fff/fff-fastd/files/etc/vpn-select.d/fastd
new file mode 100644
index 0000000..106daa0
--- /dev/null
+++ b/src/packages/fff/fff-fastd/files/etc/vpn-select.d/fastd
@@ -0,0 +1,33 @@
+# remove old config
+rm /tmp/fastd_fff_peers/*
+
+
+fastd_config() {
+ [ -d /tmp/fastd_fff_peers ] || mkdir /tmp/fastd_fff_peers
+
+ # write fastd-config
+ json_get_var servername name
+ filename="/etc/fastd/fff/peers/$servername"
+ echo "#name \"${servername}\";" > "$filename"
+ json_get_var key key
+ echo "key \"${key}\";" >> "$filename"
+ json_get_var address address
+ json_get_var port port
+ echo "remote \"${address}\" port ${port};" >> "$filename"
+ echo "" >> "$filename"
+ echo "float yes;" >> "$filename"
+}
+
+fastd_start_stop() {
+ /etc/init.d/fastd reload # does nothing if fastd was not running
+
+ # fastd start/stop for various situations
+ # this is needed for first start and if fastd comes up or disappears in hoodfile
+ pidfile="/tmp/run/fastd.fff.pid"
+ if [ "$(ls /etc/fastd/fff/peers/* 2>/dev/null)" ]; then
+ ([ -s "$pidfile" ] && [ -d "/proc/$(cat "$pidfile")" ]) || /etc/init.d/fastd start
+ else
+ ([ -s "$pidfile" ] && [ -d "/proc/$(cat "$pidfile")" ]) && /etc/init.d/fastd stop
+ fi
+}
+
--
2.20.1
Mehr Informationen über die Mailingliste franken-dev