sup

A curses threads-with-tags style email client

sup.git

git clone https://supmua.dev/git/sup/
commit ba86c62b8649558724563c27a4911cfc8aa9a8d0
parent e7a1cd97651839589b893c4a88a42e0f92dc60ee
Author: wmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Date:   Sat,  6 Jan 2007 15:59:48 +0000

better comments and logging in authentication sequence


git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@213 5c8cc53c-5e98-4d25-b20a-d8db53a31250

Diffstat:
M lib/sup/imap.rb | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/lib/sup/imap.rb b/lib/sup/imap.rb
@@ -112,14 +112,18 @@ class IMAP < Source
         #raise Net::IMAP::ByeResponseError, "simulated imap failure"
         @imap = Net::IMAP.new host, port, ssl?
         say "Logging in..."
+
+        ## although RFC1730 claims that "If an AUTHENTICATE command
+        ## fails with a NO response, the client may try another", in
+        ## practice it seems like they will also send BAD responses.
         begin
           @imap.authenticate 'CRAM-MD5', @username, @password
         rescue Net::IMAP::BadResponseError, Net::IMAP::NoResponseError => e
-          say "CRAM-MD5 authentication failed: #{e.class}"
+          Redwood::log "CRAM-MD5 authentication failed: #{e.class}. Trying LOGIN auth..."
           begin
             @imap.authenticate 'LOGIN', @username, @password
           rescue Net::IMAP::BadResponseError, Net::IMAP::NoResponseError => e
-            say "LOGIN authentication failed: #{e.class}"
+            Redwood::log "LOGIN authentication failed: #{e.class}. Trying plain-text LOGIN..."
             @imap.login @username, @password
           end
         end