summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Harris <jgh146exb@wizmail.org>2017-10-08 18:56:13 +0100
committerJeremy Harris <jgh146exb@wizmail.org>2017-10-08 18:56:13 +0100
commit9e0ed81fc2a821e60dd3235c4e5598ab45cfcc1e (patch)
tree036c0ca59cccafbf4e08e2e05b0e4ddf6bbf0222
parent44e6c20c0d355daceb76ecc2c014b4af4cea1031 (diff)
Logging: show when input from truncated for logging "next input sent too soon"
-rw-r--r--doc/doc-txt/ChangeLog3
-rw-r--r--src/src/smtp_in.c9
-rw-r--r--test/log/09012
-rw-r--r--test/rejectlog/09012
-rw-r--r--test/scripts/0000-Basic/09016
-rw-r--r--test/stdout/09016
6 files changed, 12 insertions, 16 deletions
diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog
index 8f1b6b7ad..5266cefc4 100644
--- a/doc/doc-txt/ChangeLog
+++ b/doc/doc-txt/ChangeLog
@@ -166,6 +166,9 @@ HS/02 Fix Bug 2130: large writes from the transport subprocess where chunked
JH/27 Fix SOCKS bug: an unitialized pointer was deref'd by the transport process
which could crash as a result. This could lead to undeliverable messages.
+JH/28 Logging: "next input sent too soon" now shows where input was truncated
+ for log purposes.
+
Exim version 4.89
-----------------
diff --git a/src/src/smtp_in.c b/src/src/smtp_in.c
index 0f8d5599b..9847c86c7 100644
--- a/src/src/smtp_in.c
+++ b/src/src/smtp_in.c
@@ -565,11 +565,12 @@ for(;;)
incomplete_transaction_log(US"sync failure");
log_write(0, LOG_MAIN|LOG_REJECT, "SMTP protocol synchronization error "
"(next input sent too soon: pipelining was not advertised): "
- "rejected \"%s\" %s next input=\"%s\"",
+ "rejected \"%s\" %s next input=\"%s\"%s",
smtp_cmd_buffer, host_and_ident(TRUE),
- string_printing(string_copyn(smtp_inptr, n)));
- (void) synprot_error(L_smtp_protocol_error, 554, NULL,
- US"SMTP synchronization error");
+ string_printing(string_copyn(smtp_inptr, n)),
+ smtp_inend - smtp_inptr > n ? "..." : "");
+ (void) synprot_error(L_smtp_protocol_error, 554, NULL,
+ US"SMTP synchronization error");
goto repeat_until_rset;
}
diff --git a/test/log/0901 b/test/log/0901
index 0297a8915..0f876740f 100644
--- a/test/log/0901
+++ b/test/log/0901
@@ -10,6 +10,6 @@
1999-03-02 09:44:33 SMTP connection from (tester) [127.0.0.1] lost while reading message data
1999-03-02 09:44:33 SMTP connection from (tester) [127.0.0.1] lost while reading message data
1999-03-02 09:44:33 10HmbD-0005vi-00 <= someone8@some.domain H=(tester) [127.0.0.1] P=esmtp K S=sss for CALLER@test.ex
-1999-03-02 09:44:33 SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected "BDAT 1" H=(tester) [127.0.0.1] next input="BDAT 87 last\r\n"
+1999-03-02 09:44:33 SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected "BDAT 1" H=(tester) [127.0.0.1] next input="BDAT 87 last\r\no: Susan@random.co"...
1999-03-02 09:44:33 SMTP call from (tester) [127.0.0.1] dropped: too many syntax or protocol errors (last command was "From: Sam@random.com")
1999-03-02 09:44:33 SMTP connection from (tester) [127.0.0.1] lost while reading message data (header)
diff --git a/test/rejectlog/0901 b/test/rejectlog/0901
index f75d9d270..a4185a966 100644
--- a/test/rejectlog/0901
+++ b/test/rejectlog/0901
@@ -1,6 +1,6 @@
******** SERVER ********
-1999-03-02 09:44:33 SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected "BDAT 1" H=(tester) [127.0.0.1] next input="BDAT 87 last\r\n"
+1999-03-02 09:44:33 SMTP protocol synchronization error (next input sent too soon: pipelining was not advertised): rejected "BDAT 1" H=(tester) [127.0.0.1] next input="BDAT 87 last\r\no: Susan@random.co"...
Envelope-from: <someone9@some.domain>
Envelope-to: <CALLER@test.ex>
1999-03-02 09:44:33 SMTP call from (tester) [127.0.0.1] dropped: too many syntax or protocol errors (last command was "From: Sam@random.com")
diff --git a/test/scripts/0000-Basic/0901 b/test/scripts/0000-Basic/0901
index 5e88c5ae9..f5a6fff9a 100644
--- a/test/scripts/0000-Basic/0901
+++ b/test/scripts/0000-Basic/0901
@@ -247,11 +247,7 @@ MAIL FROM:someone9@some.domain
??? 250
RCPT TO:CALLER@test.ex
??? 250
-BDAT 1\r\nTBDAT 87 last
-o: Susan@random.com
-From: Sam@random.com
-Subject: This is a bodyless test message
-
+BDAT 1\r\nTBDAT 87 last\r\no: Susan@random.com\r\nFrom: Sam@random.com\r\nSubject: This is a bodyless test message\r\n\r\n
??? 554 SMTP synchronization error
****
#
diff --git a/test/stdout/0901 b/test/stdout/0901
index a982ac8b6..c4020ae5f 100644
--- a/test/stdout/0901
+++ b/test/stdout/0901
@@ -330,11 +330,7 @@ Connecting to 127.0.0.1 port 1225 ... connected
>>> RCPT TO:CALLER@test.ex
??? 250
<<< 250 Accepted
->>> BDAT 1\r\nTBDAT 87 last
->>> o: Susan@random.com
->>> From: Sam@random.com
->>> Subject: This is a bodyless test message
->>>
+>>> BDAT 1\r\nTBDAT 87 last\r\no: Susan@random.com\r\nFrom: Sam@random.com\r\nSubject: This is a bodyless test message\r\n\r\n
??? 554 SMTP synchronization error
<<< 554 SMTP synchronization error
End of script