From 00f0271ea6e6b93bc0c649be952c3683f29f7b2b Mon Sep 17 00:00:00 2001 From: Dogfather Date: Fri, 18 Sep 2026 15:27:10 +0200 Subject: [PATCH] Probelauf prueft auch die Abfrage des Einrichtungswerkzeugs Die STUN-Abfrage in turn-einrichten.mjs hatte noch nie einen antwortenden Server gesehen. Eine Abfrage, die immer "keine Antwort" sagt, laesst uns an der Firewall suchen, waehrend dort nichts falsch ist. Jetzt gemessen: mit laufendem Server erkennt sie ihn, ohne meldet sie ihn als nicht erreichbar. Co-Authored-By: Claude Opus 5 --- tools/turn-probelauf.sh | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/tools/turn-probelauf.sh b/tools/turn-probelauf.sh index 91d3db19..efc4fdbf 100644 --- a/tools/turn-probelauf.sh +++ b/tools/turn-probelauf.sh @@ -177,6 +177,33 @@ else fehl "zweiter Start misslungen" fi +# -------------------------------------------------------------------- +echo +echo "--- 5. Sieht das Einrichtungswerkzeug einen laufenden Server? ---" +echo " (eine Abfrage, die IMMER \"keine Antwort\" sagt, laesst uns an" +echo " der Firewall suchen, waehrend dort nichts falsch ist)" +WZ="$(dirname "$0")/turn-einrichten.mjs" +if [ ! -f "$WZ" ]; then + echo " -- turn-einrichten.mjs nicht gefunden -- nicht nachgesehen" +else + "$NODE" -e " +const {DatabaseSync} = require('node:sqlite'); +const d = new DatabaseSync(process.argv[1]); +d.exec('CREATE TABLE einstellungen (schluessel TEXT PRIMARY KEY, wert TEXT, geaendert TEXT, von INTEGER)'); +d.close();" "$P/w.db" + printf 'ein-geheimnis-das-lang-genug-ist-fuer-diesen-probelauf +' > "$P/geheim" + + WORKSPACE_DB="$P/w.db" TURN_GEHEIMNIS_DATEI="$P/geheim" "$NODE" "$WZ" eintragen turn:127.0.0.1:34780 >/dev/null 2>&1 + MIT=$? + anhalten + WORKSPACE_DB="$P/w.db" TURN_GEHEIMNIS_DATEI="$P/geheim" "$NODE" "$WZ" pruefen >/dev/null 2>&1 + OHNE=$? + + [ "$MIT" -eq 0 ] && ok "es erkennt den laufenden Server" || fehl "es erkennt den laufenden Server NICHT (Rueckgabewert $MIT)" + [ "$OHNE" -ne 0 ] && ok "und meldet den abgeschalteten als nicht erreichbar -- beide Faelle" || fehl "es meldet auch ohne Server Erfolg -- die Abfrage misst nichts" +fi + echo if [ "$FEHLER" -eq 0 ]; then echo "ALLES IN ORDNUNG -- coturn und der Workspace rechnen dasselbe."