mirror of
https://github.com/M66B/FairEmail.git
synced 2024-12-21 23:32:51 +00:00
Revert "Added support for old style login command"
This reverts commit 15a17d33d0
.
This commit is contained in:
parent
7807a3d939
commit
f2eccd4eda
3 changed files with 2 additions and 161 deletions
|
@ -888,21 +888,9 @@ public class IMAPStore extends Store
|
|||
}
|
||||
|
||||
if (m.equals("PLAIN"))
|
||||
try {
|
||||
p.authplain(authzid, user, password);
|
||||
} catch (ProtocolException ex) {
|
||||
if (mechs.indexOf("LOGIN") > mechs.indexOf("PLAIN"))
|
||||
continue;
|
||||
else
|
||||
throw ex;
|
||||
}
|
||||
p.authplain(authzid, user, password);
|
||||
else if (m.equals("LOGIN"))
|
||||
try {
|
||||
p.authlogin(user, password);
|
||||
} catch (ProtocolException ex) {
|
||||
eu.faircode.email.Log.w(ex);
|
||||
p.authloginold(user, password);
|
||||
}
|
||||
p.authlogin(user, password);
|
||||
else if (m.equals("NTLM"))
|
||||
p.authntlm(authzid, user, password);
|
||||
else if (m.equals("XOAUTH2"))
|
||||
|
|
|
@ -628,60 +628,6 @@ public class IMAPProtocol extends Protocol {
|
|||
}
|
||||
|
||||
|
||||
public synchronized void authloginold(String u, String p)
|
||||
throws ProtocolException {
|
||||
List<Response> v = new ArrayList<>();
|
||||
String tag = null;
|
||||
Response r = null;
|
||||
boolean done = false;
|
||||
|
||||
try {
|
||||
|
||||
if (noauthdebug && isTracing()) {
|
||||
logger.fine("LOGIN command trace suppressed");
|
||||
suspendTracing();
|
||||
}
|
||||
|
||||
try {
|
||||
Argument arg = new Argument();
|
||||
arg.writeNString(u);
|
||||
arg.writeNString(p);
|
||||
tag = writeCommand("LOGIN", arg);
|
||||
} catch (Exception ex) {
|
||||
r = Response.byeResponse(ex);
|
||||
done = true;
|
||||
}
|
||||
|
||||
while (!done) {
|
||||
try {
|
||||
r = readResponse();
|
||||
if (r.isTagged() && r.getTag().equals(tag))
|
||||
done = true;
|
||||
else if (r.isBYE()) // outta here
|
||||
done = true;
|
||||
} catch (Exception ioex) {
|
||||
r = Response.byeResponse(ioex);
|
||||
done = true;
|
||||
}
|
||||
v.add(r);
|
||||
}
|
||||
|
||||
} finally {
|
||||
resumeTracing();
|
||||
}
|
||||
|
||||
Response[] responses = v.toArray(new Response[v.size()]);
|
||||
|
||||
handleCapabilityResponse(responses);
|
||||
notifyResponseHandlers(responses);
|
||||
|
||||
if (noauthdebug && isTracing())
|
||||
logger.fine("LOGIN command result: " + r);
|
||||
handleLoginResult(r);
|
||||
setCapabilities(r);
|
||||
authenticated = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* The AUTHENTICATE command with AUTH=PLAIN authentication scheme.
|
||||
* This is based heavly on the {@link #authlogin} method.
|
||||
|
|
|
@ -1,93 +0,0 @@
|
|||
diff --git a/app/src/main/java/com/sun/mail/imap/IMAPStore.java b/app/src/main/java/com/sun/mail/imap/IMAPStore.java
|
||||
index 929e82d33..5dcf8ae67 100644
|
||||
--- a/app/src/main/java/com/sun/mail/imap/IMAPStore.java
|
||||
+++ b/app/src/main/java/com/sun/mail/imap/IMAPStore.java
|
||||
@@ -888,9 +905,21 @@ public class IMAPStore extends Store
|
||||
}
|
||||
|
||||
if (m.equals("PLAIN"))
|
||||
- p.authplain(authzid, user, password);
|
||||
+ try {
|
||||
+ p.authplain(authzid, user, password);
|
||||
+ } catch (ProtocolException ex) {
|
||||
+ if (mechs.indexOf("LOGIN") > mechs.indexOf("PLAIN"))
|
||||
+ continue;
|
||||
+ else
|
||||
+ throw ex;
|
||||
+ }
|
||||
else if (m.equals("LOGIN"))
|
||||
- p.authlogin(user, password);
|
||||
+ try {
|
||||
+ p.authlogin(user, password);
|
||||
+ } catch (ProtocolException ex) {
|
||||
+ eu.faircode.email.Log.w(ex);
|
||||
+ p.authloginold(user, password);
|
||||
+ }
|
||||
else if (m.equals("NTLM"))
|
||||
p.authntlm(authzid, user, password);
|
||||
else if (m.equals("XOAUTH2"))
|
||||
diff --git a/app/src/main/java/com/sun/mail/imap/protocol/IMAPProtocol.java b/app/src/main/java/com/sun/mail/imap/protocol/IMAPProtocol.java
|
||||
index a8a88b6c0..57a2ee924 100644
|
||||
--- a/app/src/main/java/com/sun/mail/imap/protocol/IMAPProtocol.java
|
||||
+++ b/app/src/main/java/com/sun/mail/imap/protocol/IMAPProtocol.java
|
||||
@@ -628,6 +628,60 @@ public class IMAPProtocol extends Protocol {
|
||||
}
|
||||
|
||||
|
||||
+ public synchronized void authloginold(String u, String p)
|
||||
+ throws ProtocolException {
|
||||
+ List<Response> v = new ArrayList<>();
|
||||
+ String tag = null;
|
||||
+ Response r = null;
|
||||
+ boolean done = false;
|
||||
+
|
||||
+ try {
|
||||
+
|
||||
+ if (noauthdebug && isTracing()) {
|
||||
+ logger.fine("LOGIN command trace suppressed");
|
||||
+ suspendTracing();
|
||||
+ }
|
||||
+
|
||||
+ try {
|
||||
+ Argument arg = new Argument();
|
||||
+ arg.writeNString(u);
|
||||
+ arg.writeNString(p);
|
||||
+ tag = writeCommand("LOGIN", arg);
|
||||
+ } catch (Exception ex) {
|
||||
+ r = Response.byeResponse(ex);
|
||||
+ done = true;
|
||||
+ }
|
||||
+
|
||||
+ while (!done) {
|
||||
+ try {
|
||||
+ r = readResponse();
|
||||
+ if (r.isTagged() && r.getTag().equals(tag))
|
||||
+ done = true;
|
||||
+ else if (r.isBYE()) // outta here
|
||||
+ done = true;
|
||||
+ } catch (Exception ioex) {
|
||||
+ r = Response.byeResponse(ioex);
|
||||
+ done = true;
|
||||
+ }
|
||||
+ v.add(r);
|
||||
+ }
|
||||
+
|
||||
+ } finally {
|
||||
+ resumeTracing();
|
||||
+ }
|
||||
+
|
||||
+ Response[] responses = v.toArray(new Response[v.size()]);
|
||||
+
|
||||
+ handleCapabilityResponse(responses);
|
||||
+ notifyResponseHandlers(responses);
|
||||
+
|
||||
+ if (noauthdebug && isTracing())
|
||||
+ logger.fine("LOGIN command result: " + r);
|
||||
+ handleLoginResult(r);
|
||||
+ setCapabilities(r);
|
||||
+ authenticated = true;
|
||||
+ }
|
||||
+
|
||||
/**
|
||||
* The AUTHENTICATE command with AUTH=PLAIN authentication scheme.
|
||||
* This is based heavly on the {@link #authlogin} method.
|
Loading…
Reference in a new issue