Problem mit update / httputils

Begonnen von Sidey, 06 September 2015, 23:00:02

Vorheriges Thema - Nächstes Thema

herrmannj

ruhig Brauner. :)

a: Die Konvention ist völlig in Ordnung, sie war, zumindest mir, nicht so transparent.
b: natürlich darf fhem unterschiedliche Rahmenbedingungen gut behandelt, die Welt ist nicht nur Schwarz Weiß und DOS Konventionen sind, ob man das mag oder nicht, in der Welt. Wir alle (die meisten ? ;) ) wollen ein gut funktionierendes fhem. Alles Ausnahmen die fhem von sich aus behandelt sind eben kein support call hier. Ist ja auch schön.
c:  lass uns die Grundsatzdiskussion beiseite legen, die lenkt nur von Thema ab. Da vermute ich, wie bereits geschrieben, noch offene Punkte weil:

Grundsätzlich "linuxe" ich, daher sollte mich das eigentlich kalt lassen. Tatsächlich habe ich aber schon vereinzelt solche Fehlerberichte erhalten, sollten wir im Auge behalten und dann einfach lösen :)

vg
joerg

Sidey

Hi,

was habe ich da nur angestellt.

Ich sehr den von mir eingestellten Patch mittlerweile selbst etwas skeptisch.
Allerdings macht er ja nichts kaputt.

Ich habe jetzt noch mal über das Grundproblem nachgedacht.... Ich hatte Daten mit einem nicht supportetem Line Feed übergeben. Das führe dann dazu, dass die URL ein \r Zeichen enthielt.

Im httputils Modul gibt es eine Regex, die auf valide URLs prüft.

Im Netz habe ich eine wesentlich komplexere Variante gefunden:
^(http(?:s)?\:\/\/[a-zA-Z0-9]+(?:(?:\.|\-)[a-zA-Z0-9]+)+(?:\:\d+)?(?:\/[\w\-]+)*(?:\/?|\/\w+\.[a-zA-Z]{2,4}(?:\?[\w]+\=[\w\-]+)?)?(?:\&[\w]+\=[\w\-]+)*)$

Ich bin jetzt nicht der Regex Spezi, aber wenn am Ende ein \r  teil der URL ist, dann ist das keine gültige URL nach RFC, denke ich.

Vielleicht ist Ziel führender, die Prüfung auf eine valide URL im httputils Modul zu erweitern.

Die oben gepostete Regex wird das aber wohl auch nicht erkennen vermute ich.


Grüße Sven

Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker