ph10 2007/04/16 12:17:13 BST
Modified files:
exim-doc/doc-txt ChangeLog
exim-src/src smtp_in.c
exim-test/stdout 0547
Log:
Do not advertise STARTTLS in response to HELP unless it would be
advertised in response to EHLO.
Revision Changes Path
1.504 +3 -0 exim/exim-doc/doc-txt/ChangeLog
1.58 +7 -4 exim/exim-src/src/smtp_in.c
1.2 +10 -10 exim/exim-test/stdout/0547
Index: ChangeLog
===================================================================
RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
retrieving revision 1.503
retrieving revision 1.504
diff -u -r1.503 -r1.504
--- ChangeLog 16 Apr 2007 10:31:58 -0000 1.503
+++ ChangeLog 16 Apr 2007 11:17:12 -0000 1.504
@@ -1,4 +1,4 @@
-$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.503 2007/04/16 10:31:58 ph10 Exp $
+$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.504 2007/04/16 11:17:12 ph10 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
@@ -213,6 +213,9 @@
would have sent an OK response which the client would never have see.
This could lead to message repetition. This fix should cure that, at
least in a lot of common cases.
+
+PH/45 Do not advertise STARTTLS in response to HELP unless it would be
+ advertised in response to EHLO.
Exim version 4.66
Index: smtp_in.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/smtp_in.c,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -r1.57 -r1.58
--- smtp_in.c 13 Apr 2007 15:13:47 -0000 1.57
+++ smtp_in.c 16 Apr 2007 11:17:13 -0000 1.58
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/smtp_in.c,v 1.57 2007/04/13 15:13:47 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/smtp_in.c,v 1.58 2007/04/16 11:17:13 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -3853,9 +3853,10 @@
break;
- /* Show ETRN/EXPN/VRFY if there's
- an ACL for checking hosts; if actually used, a check will be done for
- permitted hosts. */
+ /* Show ETRN/EXPN/VRFY if there's an ACL for checking hosts; if actually
+ used, a check will be done for permitted hosts. Show STARTTLS only if not
+ already in a TLS session and if it would be advertised in the EHLO
+ response. */
case HELP_CMD:
HAD(SCH_HELP);
@@ -3865,7 +3866,9 @@
buffer[0] = 0;
Ustrcat(buffer, " AUTH");
#ifdef SUPPORT_TLS
- Ustrcat(buffer, " STARTTLS");
+ if (tls_active < 0 &&
+ verify_check_host(&tls_advertise_hosts) != FAIL)
+ Ustrcat(buffer, " STARTTLS");
#endif
Ustrcat(buffer, " HELO EHLO MAIL RCPT DATA");
Ustrcat(buffer, " NOOP QUIT RSET HELP");
Index: 0547
===================================================================
RCS file: /home/cvs/exim/exim-test/stdout/0547,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 0547 15 Jan 2007 15:59:23 -0000 1.1
+++ 0547 16 Apr 2007 11:17:13 -0000 1.2
@@ -57,31 +57,31 @@
250 Reset OK
250 OK
214-Commands supported:
-214 AUTH STARTTLS HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
+214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
250 Reset OK
250 OK
214-Commands supported:
-214 AUTH STARTTLS HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
+214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
250 Reset OK
250 OK
214-Commands supported:
-214 AUTH STARTTLS HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
+214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
250 Reset OK
250 OK
214-Commands supported:
-214 AUTH STARTTLS HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
+214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
250 Reset OK
250 OK
214-Commands supported:
-214 AUTH STARTTLS HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
+214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
250 Reset OK
250 OK
214-Commands supported:
-214 AUTH STARTTLS HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
+214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
250 Reset OK
250 OK
214-Commands supported:
-214 AUTH STARTTLS HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
+214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
221 myhost.test.ex closing connection
220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
550 Administrative prohibition
@@ -96,15 +96,15 @@
250 Reset OK
250 OK
214-Commands supported:
-214 AUTH STARTTLS HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
+214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
250 Reset OK
250 OK
214-Commands supported:
-214 AUTH STARTTLS HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
+214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
250 Reset OK
250 OK
214-Commands supported:
-214 AUTH STARTTLS HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
+214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP
250 Reset OK
250 OK
554 Too many nonmail commands