Ja, abgestimmt werden, aber TLS! = SSL. Damit TLS funktioniert, müssen Sie einen einfachen Socket erstellen, den Befehl IMAP STARTTLS ausführen und ihn dann in einen SSL-Socket umwandeln. Während IO :: Socket :: SSL solche Sockets "upgraden" kann, ist die STARTTLS-Negotiation Teil des IMAP-Protokolls und damit nicht "das Rad neu erfinden" - Sie lassen jeden Benutzer des IMAP-Client-Moduls das Rad neu erfinden mit diesem Teil des Protokolls (einschließlich aller anderen Bits und Teile, z. B. Leerlaufereignisse), die während des Prozesses auftauchen, "manuell" umgehen zu müssen!
Ich denke, es könnte möglich sein, einen Socket zu öffnen, alles empfangen und einfach "STARTTLS \ r \ n" runter zu senden, dann start_SSL aufrufen und auf das Beste hoffen. Natürlich gibt es dort keine Überprüfung der Fähigkeiten, es sei denn, Sie tun dies manuell, für die Sie sich die IMAP-RFCs ansehen müssten.
E-Mail :: IMAPClient hat TLS-Handhabung eingebaut, obwohl ich Probleme mit mehrteiligen Nachrichten in Fällen hatte, wo ich nur bestimmte Teile herunterladen möchte - wenn Sie die ganze Nachricht greifen wird dies sowieso nicht Angelegenheit. Für mich geht die Suche jedoch weiter!
Ich fürchte, ich verstehe nicht genug darüber zu programmieren, was codiert werden muss. Ich bin wirklich auf der Suche nach einem Modul, das diese Funktionalität eingebaut bietet. Mit anderen Worten, ich möchte einfach eine IMAP-Verbindung initiieren und "TLS => 1" angeben. Auf der anderen Seite wäre ich auch glücklich, wenn Sie in ein bisschen mehr Details genau auslegen würden, wie ich ein IMAP-Modul mit TLS-Unterstützung bekommen könnte, indem ich die oben genannten Methoden benutze. –
Machen Sie Ihre Netzwerkverbindung mit io :: socket und übergeben Sie diese Verbindung dann an mail :: imapclient. Es wird nicht versuchen, eine eigene Verbindung herzustellen, sondern die Verwendung, die dafür verwendet wird. Damit können Sie den Mechanismus verwenden, den Sie aufbringen können. Das ist eine gute Sache, da wir nicht wollen, dass die mail: imapclient programer das Rad neu erfindet und sich mit Netzwerken beschäftigt. – hpavc