Auto fix '501 Syntactically invalid HELO argument(s)'

This commit is contained in:
M66B 2020-01-08 11:00:53 +01:00
parent 15054c89e1
commit ad07ae8032
1 changed files with 14 additions and 2 deletions

View File

@ -345,8 +345,9 @@ public class MailService implements AutoCloseable {
} else if ("smtp".equals(protocol) || "smtps".equals(protocol)) {
String[] c = BuildConfig.APPLICATION_ID.split("\\.");
Collections.reverse(Arrays.asList(c));
String haddr = TextUtils.join(".", c);
String domain = TextUtils.join(".", c);
String haddr = domain;
if (useip)
try {
// This assumes getByName always returns the same address (type)
@ -363,7 +364,18 @@ public class MailService implements AutoCloseable {
properties.put("mail." + protocol + ".localhost", haddr);
iservice = isession.getTransport(protocol);
iservice.connect(host, port, user, password);
try {
iservice.connect(host, port, user, password);
} catch (MessagingException ex) {
if (useip &&
ex.getMessage() != null &&
ex.getMessage().toLowerCase().contains("syntactically invalid")) {
Log.i("Using localhost=" + domain);
properties.put("mail." + protocol + ".localhost", domain);
iservice.connect(host, port, user, password);
} else
throw ex;
}
} else
throw new NoSuchProviderException(protocol);
} catch (MessagingException ex) {