summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShawn Pearce <sop@google.com>2013-01-23 21:54:00 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2013-01-23 21:54:00 +0000
commit9f767b6ab27d3cf396a31676c230cf3e46be8aab (patch)
tree0c9516a855a98c97f29b215531156714da1d8431
parent25641a4f63d0638466f530034a1e5770e70bde36 (diff)
parentf83d1b65e51d0b0382db0bb37f7981f99979e4da (diff)
Merge "Improve SMTP client error messages" into stable-2.5
-rw-r--r--gerrit-server/src/main/java/com/google/gerrit/server/mail/SmtpEmailSender.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/mail/SmtpEmailSender.java b/gerrit-server/src/main/java/com/google/gerrit/server/mail/SmtpEmailSender.java
index f6817102bc..ce45ffe763 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/mail/SmtpEmailSender.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/mail/SmtpEmailSender.java
@@ -182,7 +182,12 @@ public class SmtpEmailSender implements EmailSender {
Writer w = client.sendMessageData();
if (w == null) {
- throw new EmailException("Server " + smtpHost + " rejected body");
+ /* Include rejected recipient error messages here to not lose that
+ * information. That piece of the puzzle is vital if zero recipients
+ * are accepted and the server consequently rejects the DATA command.
+ */
+ throw new EmailException(rejected + "Server " + smtpHost
+ + " rejected DATA command: " + client.getReplyString());
}
w = new BufferedWriter(w);
@@ -201,7 +206,8 @@ public class SmtpEmailSender implements EmailSender {
w.close();
if (!client.completePendingCommand()) {
- throw new EmailException("Server " + smtpHost + " rejected body");
+ throw new EmailException("Server " + smtpHost
+ + " rejected message body: " + client.getReplyString());
}
client.logout();
@@ -237,7 +243,8 @@ public class SmtpEmailSender implements EmailSender {
}
if (!client.login()) {
String e = client.getReplyString();
- throw new EmailException("SMTP server rejected login: " + e);
+ throw new EmailException(
+ "SMTP server rejected HELO/EHLO greeting: " + e);
}
if (smtpEncryption == Encryption.TLS) {