Bug in FHEMWEB

Begonnen von Johannes_B, 17 April 2014, 09:47:45

Vorheriges Thema - Nächstes Thema

Johannes_B

Hi,

habe ein Problem in FHEMWEB gefunden...

Wie kann man es nachvollziehen:
- SSL aktiviert
- Lange Response (z.B. in langer Config)

Was ist das Problem:
- Es wird mittels "print" in die Connection geschrieben
- Es kommt aber nur die maximale Größe eines SSL Pakets an und wird danach abgeschnitten
- Connection wird nicht geschlossen

Wie wird das Problem behoben:
- Wenn man über die zu schreibenden Daten iteriert und mittels syswrite schreibt
- Anbei ein möglicher Patch (bin allerdings nicht so der Profi in Perl...)
- Hab das so bei mir seit ca. 1 Monat am Laufen und es scheint zu funktionieren

Weitere Probleme:
- Das Gleiche tritt auch bei FileLogs auf, denn diese werden gesondert behandelt - dies müsste noch gefixt werden


Gruß,

Johannes
FHEM Control - an iOS app - available on the App Store:
https://itunes.apple.com/app/id936674170

Dr. Boris Neubert

Hallo,

wo wir schon beim Patchen sind: anbei ein Patch, der ein Attribut einführt, grundsätzlich alles im Hintergrund zurückzuliefern, sowie ein Alarm, der das syswrite killt, wenn die Verbindung länger als 10 Sekunden klemmt. Getestet.

Vielleicht von Nutzen.

Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

betateilchen

irgendwie kann ich mich des Eindrucks nicht erwehren, dass FHEMWEB langsam unbeherrschbar wird  :o
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

@Johannes: ich habe das Haupt-Return in FHEMWEB auf addToWritebuffer umgestellt, was die Daten erst nach select Pruefung zurueckschreibt.

Danach habe ich auch das FW_returnFileAsStream umgestellt (zustaendig fuer Dateien wie commandref und logfiles), was auch prima funktioniert hat, bis es mir eingefallen ist, dass es nicht sehr klug ist, in einem Streaming-Funktion die Daten zu Puffern, das hat naemlich ein Reboot der FritzBox zur Folge.

Daraufhin habe ich die Aenderungen wieder zurueckgebaut, und print durch FW_myPrint ersetzt: lange logfiles funktionieren jetzt auch per HTTPS.

Johannes_B

Hallo,

hab es gerade mal probiert: Hat geklappt! :)
Danke fürs Fixen.

Anderes Problem bei dem aktuellen Stand im Repo:
Undefined subroutine &main::RTypes_ShowTypeLibrary called at /usr/bin/fhem.pl line 491.

Da die Methode "RTypes_ShowTypeLibrary" nichts macht, außer ein Log, habe ich den Aufruf einfach mal in fhem.pl entfernt.
So funktioniert es zumindest erstmal wieder...


Gruß,

Johannes
FHEM Control - an iOS app - available on the App Store:
https://itunes.apple.com/app/id936674170

rudolfkoenig

Dir fehlt FHEM/RTypes.pm