[PATCH 5/5] VARIANT layer3: generate hoodfile

Christian Dresel fff at chrisi01.de
Do Jan 30 01:31:20 CET 2020


Auch hier fände ich ein eigenes package schick. Die Hoodfile wurde so konzipiert, das sie auch andere Sachen wie Batman-adv als meshprotokoll anbieten könnte. So könnte es dann z.b. ein hwmp-l3 oder wds-l3 geben so das man in der Hoodfile verschiedene meshsysteme für die Hood auswählen kann. Der gw Betreiber gibt das System vor und die Knoten übernehmen es. Klingt nach viel Arbeit, nach viel Zukunft aber vllt kann man das einfach schonmal passend vorbereiten und wenn jemand ein wds-l3 erstellen will, darauf aufbauen kann.

Ich hab in meinen Mails jetzt einfach paar Beispiel packages genannt, welches nun von welchen eine Abhängigkeit braucht müsste man nochmal überlegen auch ob sie überhaupt so Sinn machen, ich wollte hier eher nur mal grundsätzlich eine Idee aufzeigen und hab das keinesfalls gerade bis zu Ende gedacht ;) ich hoffe es kommt halbwegs verständlich rüber worauf ich hinaus will. Ansonsten wäre vllt auch mal ein direktes Gespräch sinnvoll, das ist leichter als es versuchen in Textform rüber zu bringen was mir so vorschwebt.

Gruß 

Christian

Am 27. Januar 2020 14:25:12 MEZ schrieb Robert Langhammer <rlanghammer at web.de>:
>This generates a hoodfile out of config/gateway and config/fff.
>
>Signed-off-by: Robert Langhammer <rlanghammer at web.de>
>---
> .../files/etc/gateway.d/90-generate-hoodfile  | 37 +++++++++++++++++++
> 1 file changed, 37 insertions(+)
>create mode 100644
>src/packages/fff/fff-gateway/files/etc/gateway.d/90-generate-hoodfile
>
>diff --git
>a/src/packages/fff/fff-gateway/files/etc/gateway.d/90-generate-hoodfile
>b/src/packages/fff/fff-gateway/files/etc/gateway.d/90-generate-hoodfile
>new file mode 100644
>index 0000000..f61415f
>--- /dev/null
>+++
>b/src/packages/fff/fff-gateway/files/etc/gateway.d/90-generate-hoodfile
>@@ -0,0 +1,37 @@
>+# source jshn shell library
>+. /usr/share/libubox/jshn.sh
>+
>+configure() {
>+	# remove old hoodfile
>+	rm /www/hood/keyxchangev2data
>+
>+	# generating json data
>+	json_init
>+	json_add_string "version" "1"
>+
>+	json_add_object "network"
>+	json_add_string "ula_prefix" "$(uci get gateway. at client[0].ip6addr |
>sed 's/.*\(fd43[^ ]*\).*/\1/' | sed 's;::.\{1,4\}/;:/;')"
>+	json_close_object
>+
>+	json_add_object "hood"
>+	json_add_string "name" "$(uci -q get fff.system.hoodname)"
>+	json_add_string "essid" "$(uci -q get gateway. at client[0].essid)"
>+	json_add_string "mesh_id" "$(uci -q get gateway. at client[0].mesh_id)"
>+	json_add_string "channel2" "$(uci -q get
>gateway. at client[0].chan2ghz)"
>+	json_add_string "mode2" "ht20"
>+	json_add_string "mesh_type2" "802.11s"
>+	json_add_string "channel5" "$(uci -q get
>gateway. at client[0].chan5ghz)"
>+	json_add_string "mode5" "ht20"
>+	json_add_string "mesh_type5" "802.11s"
>+	json_add_string "upgrade_path"
>"http://[fd43:5602:29bd:ffff::feee]:83"
>+	json_add_string "ntp_ip" "fd43:5602:29bd:ffff::1"
>+	json_add_string "timestamp" "$(date +%s)"
>+	json_close_object
>+
>+	json_dump > /www/hood/keyxchangev2data
>+}
>+
>+revert() {
>+	configure
>+}
>+
>--
>2.20.1

-- 
Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <https://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20200130/332b8497/attachment.html>


Mehr Informationen über die Mailingliste franken-dev