Ankündigung

Einklappen
Keine Ankündigung bisher.

Mail-Plugin mit SSL ohne StartTLS

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Mail-Plugin mit SSL ohne StartTLS

    Liebe Smarthome-Freunde,

    das Mail-Plugin in seinem jetzigen Zustand unterscheidet beim SMTP-Teil (den anderen habe ich nicht angeschaut) leider nicht zwischen SSL mit und ohne StartTLS, sondern setzt "ssl = True" mit "Schalte starttls ein" gleich. Das funktioniert z.B. mit GMail, aber nicht mit der SSL-Verschlüsselung von Strato auf Port 465.

    Dabei handelt es sich nicht um eine Einschränkung von Python - das ganze ist einfach nicht im Mail-Plugin implementiert. Als schnellen Hack habe ich jetzt folgende Lösung bei mir gefahren:

    Original:
    Code:
        def _connect(self):
            smtp = smtplib.SMTP(self._host, self._port)
            if self._ssl:
                smtp.starttls()
    Meine Version für Strato SSL ohne StartTLS:
    Code:
        def _connect(self):
            smtp = smtplib.SMTP_SSL(self._host, self._port)
    #        if self._ssl:
    #            smtp.starttls()
    Aber eigentlich sollte das Ganze konfigurierbar per plugins.conf sein. Die Frage ist jetzt, wie das am besten umzusetzen wäre. Mein Vorschlag wäre, einen zusätzlichen StartTLS-Parameter einzufügen (default: True), damit bisherige Installationen keine Probleme bekommen. Logik wäre dann:

    Wenn (ssl == True) UND (starttls == True) DANN verwende smtplib.SMTP und danach smtp.starttls()
    Wenn (ssl == True) UND (starttls == False) DANN verwende smtplib.SMTP_SSL
    Wenn (ssl == False) DANN verwende smtplib.SMTP

    Wäre das ok? Wie bringe ich das ein?

    Viele Grüße
    Gurkensalat
Lädt...
X