Bug im Modul 74_Unifi

Begonnen von heilerich, 06 Januar 2019, 16:59:15

Vorheriges Thema - Nächstes Thema

heilerich

Hallo zusammen,

mir ist gerade aufgefallen, dass das Unifi Modul in meiner FHEM Installation seit einigen Tagen in einer Login Schleife gefangen ist. Möglicherweise verursacht durch ein Update auf Controller Version 5.9.29.
Wenn ich die Commanref richtig verstehe ist die Controller Version 5 zwar nicht offiziell unterstützt, lief jedoch soweit ich das beurteilen kann bisher bei mir ohne Probleme.

Durch debuggen der HTTP Verbindung konnte ich das Problem auf einen falsch gesetzten Cookie Header zurückführen: Die beiden benötigten Cookies waren nicht ordnungsgemäß duruch ein CRLF Charakter sondern die Charakter "\r\n" getrennt. Leider verstehe ich nicht allzu viel von Perl, aber ich vermute, dass das Problem irgendwo hier bei diesen Zeilen Code zu finden sein wird https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/74_Unifi.pm#L829
Irgendwas scheint da beim splitten schief zu laufen.

Falls noch jemand anderes betroffen sein sollte: Als temporären Fix habe ich zwischen den Zeilen


if($hash->{httpParams}->{header} ne '') {
    $hash->{httpParams}->{header} =~ s/\\r\\n$//;
    Log3 $name, 5, "$name ($self) - Login successfully!  $hash->{httpParams}->{header}";


folgendes eingefügt


if($hash->{httpParams}->{header} ne '') {
    $hash->{httpParams}->{header} =~ s/\\r\\n$//;
    $hash->{httpParams}->{header} =~ s/\\r\\n/\r\n/;
    Log3 $name, 5, "$name ($self) - Login successfully!  $hash->{httpParams}->{header}";


Seitdem funktioniert das Modul wieder einwandfrei.

Vielleicht mag sich einer der Entwickler dem Problem bei Gelegenheit mal annehmen und einen sauberen Bugfix schreiben.

Grüße

Wuehler

Moin, besteht das Problem noch?
Zukünftig bitte wie in der Forumshilfe beschrieben das richtige Unterforum laut Maintainer.txt nutzen, damit ich die Frage auch lesen werde.  In diesem Fall im Unterforum Automatisierung.
VG,
Dirk