Calendar: client side SNI not supported for this openssl

Begonnen von Yirgacheffe, 29 März 2016, 00:29:18

Vorheriges Thema - Nächstes Thema

Yirgacheffe

Hallo,
Ich habe Probleme mit meinen Google-Kalendern und ssl:
Zitat2016.03.29 00:10:58 1: Calendar Kalender1AnAus: retrieval failed with error message <hidden>: Can't connect(2) to https://www.google.com:443:  Client side SNI not supported for this openssl
2016.03.29 00:10:58 1: Calendar Kalender1AnAus: retrieved no or empty data
Alles, was ich (zugegebenermaßen laienhaft) recherchieren konnte, habe ich probiert. Die Installation dürfte aktuell und ok sein: ssl ist installiert, fhem wurde ganz frisch aufgesetzt, nachdem ich von der Fritzbox auf einen Mac mini gewechselt habe (nur die fhem.cfg habe ich übernommen).

Liegt der Fehler beim Calendar-Modul oder bei ssl?
Was kann ich tun?

Grüße, Dirk

Dr. Boris Neubert

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

Yirgacheffe

Danke für den Link, auf diesen Thread hatte mich google aber auch schon gestoßen - nur kann ich das leider ohne weitere Hinweise nicht einsortieren. Nicht mal die grundsätzliche Frage: Wird hier die Lösung meines ssl-Problem erklärt, oder wird da geschildert, dass durch den beschriebenen Patch eines anderen Problems das ssl-Prob überhaupt erst entstanden ist?  :-[
Geschweige denn, dass ich nicht wüsste, wo und wie ich den geposteten Code einbauen müsste. Ich hatte gehofft, das Problem wäre irgendwo schon bekannt, und es wäre nur eine bestimmte Einstellung oder eine Änderung der Calendar-Def nötig.

Ich bin gern bereit, mich irgendwo einzulesen. Und auch wenn ich kein Softwareentwickler bin, traue ich mir doch ein bissel Programmierkenntnis zu - sonst würde ich ja nicht schon seit Jahren mit fhem umgehen. (Den Kalender hatte ich beispielsweise schon mal erfolgreich implementiert und produktiv im System verwendet - aber irgendwann tat's das nicht mehr. Jetzt habe ich rausgekriegt, dass es an der ssl-Verbindung hängt.)
Aber leider brauche ich als interessierter Laie doch noch ein bissel konkretere und kleinschrittigere Hilfestellung.

Dr. Boris Neubert

Hallo,

vorab: ich kenne mich mit Mac nicht aus und mehr als das folgende kann ich Dir als Hilfestellung nicht geben.

Ich lese aus dem Thread heraus, dass Du openSSL ab Version 1.0.0 brauchst.

Wenn Dir das nicht weiter hilft, rate ich Dir, mit Verweis auf diesen und den zitierten Thread und Bezug auf HttpUtils eine spezifischere Anfrage im Board "Server - Mac" zu stellen oder Dich an den zitierten Thread ranzuhängen.

Grüße
Boris

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

Yirgacheffe

Danke, das hat mich zumindest einen Schritt weiter gebracht: Ich habe es hinbekommen, auf openssl 1.0.2g upzudaten.  8)
Aber leider brachte das nicht die Lösung, der Fehler bleibt genau gleich.  :(

Ich weiß also leider immer noch nicht, ob es am Mac, an Google oder an fhem liegt...

Gruß, Dirk

rudolfkoenig

Kannst du bitte in FHEM/HttpUtils.pm die Zeile 217 ( SSL_hostname => $hash->{host},) auskommentieren/loeschen, danach FHEM neu starten, und nochmal probieren?

Yirgacheffe

Super, sieht aus als hätte das geholfen: Der Fehler ist weg, der Kalender wird offenbar gelesen.  Vielen Dank! :D

Just for the records: Was ändert das Deaktivieren dieser Zeile denn? Ist das problematisch für andere Stellen? Und ist die Zeile beim nächsten fhem-Update wieder automatisch da?

Diese Hürde scheint erst mal genommen. Leider funktionieren meine Kalender-Notifys aber offenbar doch nicht, wie sie sollen und auch schon mal funktioniert haben. Aber das ist ein anderes Problem, in das ich mich erst mal einarbeiten muss.

Gruß, Dirk

rudolfkoenig

#7
ZitatWas ändert das Deaktivieren dieser Zeile denn?
Danach wird nicht mehr versucht eine nicht vorhandene Funktionalitaet im Bibliothek zu verwenden.

Ich habe HttpUtils erweitert: SSL_hostname wird nur dann gesetzt, falls IO::Socket::SSL die Funktion can_client_sni hat, und diese Funktion OK zurueckgibt. D.h. die Verwendung von SNI mit FHEM/HttpUtils erfordert ab sofort eine relativ aktuelle IO::Socket::SSL  + darunterliegende SSL Bibliothek.

Kannst du es bitte nach den morgigen update (ab 8:00, oder ab sofort aus dem SVN) testen, ob meine Aenderung dir hilft?

Yirgacheffe

Gerne, aber doch nicht vor dem Wochenende- bin gerade in Urlaub  8)

Yirgacheffe

So, ich habe es jetzt probieren können: Update und Neustart, Kalender reload - keinerlei Fehlermeldung -> Super!  :D
Vielen Dank, ich hoffe, das Problem ist jetzt gelöst.
:) Dirk