[patch] Fix plotAsPng mit FHEMWEB Instanzen ohne get Rechte

Begonnen von MatthiasG, 05 November 2021, 22:51:15

Vorheriges Thema - Nächstes Thema

MatthiasG

Hallo zusammen,

Ich habe in meiner FHEM Installation FHEMWEB Instanzen ohne get Rechte, d.h.
attr allowed_WEB_Restricted allowedCommands trigger   #no "get" here

Dies fuehrt zu einem:
2021.11.05 22:16:34 3: Forbidden command get for WEB_Restricted_127.0.0.1_44192
2021.11.05 22:16:34 1: stacktrace:
2021.11.05 22:16:34 1:     main::allowed_Authorize             called by fhem.pl (3895)
2021.11.05 22:16:34 1:     main::CallFn                        called by fhem.pl (5853)
2021.11.05 22:16:34 1:     main::Authorized                    called by fhem.pl (1253)
2021.11.05 22:16:34 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2777)
2021.11.05 22:16:34 1:     main::FW_fC                         called by ./FHEM/98_SVG.pm (1240)

Ich habe das analysiert:
Eigentlich will sich plotAsPng() in 98_SVG.pm die erste WEB-Instanz heraussuchen (die dann ein get erlauben sollte):
foreach(@webs) { ... $FW_wname=InternalVal($_,'NAME','');

Allerdings hat das Setzen von $FW_wname keine Funktion (mehr?), denn FW_fC() in 01_FHEMWEB.pm nutzt $FW_chash:
... AnalyzeCommand($FW_chash, $cmd);

Evtl. wurde hier FHEMWEB.pm umgebaut, ohne SVN.pm nachzuziehen?

Anbei ein Patch, der das behebt.
Der Fehler und die Loesung kann mit angehaengter Minimal-Konfiguration nachvollzogen werden:
(testweise auskommentieren der Zeile  $FW_chash=$defs{$FW_wname};  in SVG.pm

Es waere schoen, wenn meinen Patch jemand in fhem aufnehmen koennte.

Viele Gruesse,
Matthias

rudolfkoenig

Danke fuer die Meldung und Ursachenforschung, habe den Fix eingecheckt.

MatthiasG