mirror of
https://github.com/Cocoanetics/SwiftMail.git
synced 2026-03-17 20:02:25 +00:00
Implement AUTHENTICATE PLAIN (RFC 4616) as a proper authentication method alongside LOGIN and XOAUTH2. When the server advertises SASL-IR (RFC 4959), credentials are sent inline with the AUTHENTICATE command, saving a round trip. Falls back to continuation-based exchange when SASL-IR is not available. - PlainAuthenticationHandler: handles OK/NO/challenge responses - IMAPConnection.authenticatePlain(): capability-gated, with SASL-IR detection and proper promise cleanup - IMAPServer.authenticatePlain(): public API with auto-reconnect support - Authentication enum extended with .plain case - README: SASL-IR capability updated to ✅ Closes #111