ph10 2004/11/10 15:21:17 GMT
Modified files:
exim-doc/doc-txt ChangeLog
exim-src/src smtp_in.c
exim-test-orig/AutoTest/log 210G 211G 225G 260 321G
exim-test-orig/AutoTest/mail 210G.ph10 211G.ph10
exim-test-orig/AutoTest/rejectlog 225G
exim-test-orig/AutoTest/scripts 211 225
exim-test-orig/AutoTest/stdout 211G 225G
Log:
Set protocol to "smtps" after EHLO->STARTTLS->HELO (was "smtp").
Revision Changes Path
1.21 +3 -0 exim/exim-doc/doc-txt/ChangeLog
1.5 +11 -10 exim/exim-src/src/smtp_in.c
1.2 +2 -2 exim/exim-test-orig/AutoTest/log/210G
1.2 +1 -1 exim/exim-test-orig/AutoTest/log/211G
1.2 +1 -1 exim/exim-test-orig/AutoTest/log/225G
1.3 +1 -1 exim/exim-test-orig/AutoTest/log/260
1.2 +1 -1 exim/exim-test-orig/AutoTest/log/321G
1.2 +2 -2 exim/exim-test-orig/AutoTest/mail/210G.ph10
1.2 +2 -2 exim/exim-test-orig/AutoTest/mail/211G.ph10
1.2 +1 -1 exim/exim-test-orig/AutoTest/rejectlog/225G
1.2 +2 -0 exim/exim-test-orig/AutoTest/scripts/211
1.2 +2 -0 exim/exim-test-orig/AutoTest/scripts/225
1.2 +3 -0 exim/exim-test-orig/AutoTest/stdout/211G
1.2 +3 -0 exim/exim-test-orig/AutoTest/stdout/225G
Index: ChangeLog
===================================================================
RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- ChangeLog 10 Nov 2004 14:15:20 -0000 1.20
+++ ChangeLog 10 Nov 2004 15:21:16 -0000 1.21
@@ -1,4 +1,4 @@
-$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.20 2004/11/10 14:15:20 ph10 Exp $
+$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.21 2004/11/10 15:21:16 ph10 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
@@ -73,6 +73,9 @@
20. Incorporated Michael Haardt's patch to ldap.c for improving the way it
handles timeouts, both on the server side and network timeouts. Renamed the
CONNECT parameter as NETTIMEOUT (but kept the old name for compatibility).
+
+21. The rare case of EHLO->STARTTLS->HELO was setting the protocol to "smtp".
+ It is now set to "smtps".
Exim version 4.43
Index: smtp_in.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/smtp_in.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- smtp_in.c 4 Nov 2004 12:19:48 -0000 1.4
+++ smtp_in.c 10 Nov 2004 15:21:16 -0000 1.5
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/smtp_in.c,v 1.4 2004/11/04 12:19:48 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/smtp_in.c,v 1.5 2004/11/10 15:21:16 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -167,17 +167,18 @@
#define CMD_LIST_STARTTLS 4
static uschar *protocols[] = {
- US"local-smtp",
- US"local-esmtp",
- US"local-esmtpa",
- US"local-esmtps",
- US"local-esmtpsa"
+ US"local-smtp", /* HELO */
+ US"local-smtps", /* The rare case EHLO->STARTTLS->HELO */
+ US"local-esmtp", /* EHLO */
+ US"local-esmtps", /* EHLO->STARTTLS->EHLO */
+ US"local-esmtpa", /* EHLO->AUTH */
+ US"local-esmtpsa" /* EHLO->STARTTLS->EHLO->AUTH */
};
#define pnormal 0
-#define pextend 1
-#define pauthed 1 /* added to pextend */
-#define pcrpted 2 /* added to pextend */
+#define pextend 2
+#define pcrpted 1 /* added to pextend or pnormal */
+#define pauthed 2 /* added to pextend */
#define pnlocal 6 /* offset to remove "local" */
/* When reading SMTP from a remote host, we have to use our own versions of the
@@ -2362,7 +2363,7 @@
((sender_host_authenticated != NULL)? pauthed : 0) +
((tls_active >= 0)? pcrpted : 0)]
:
- protocols[pnormal])
+ protocols[pnormal + ((tls_active >= 0)? pcrpted : 0)])
+
((sender_host_address != NULL)? pnlocal : 0);
@@ -3182,7 +3183,7 @@
protocols[pextend + pcrpted +
((sender_host_authenticated != NULL)? pauthed : 0)]
:
- protocols[pnormal])
+ protocols[pnormal + pcrpted])
+
((sender_host_address != NULL)? pnlocal : 0);
Index: 210G
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/log/210G,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 210G 8 Oct 2004 14:49:31 -0000 1.1
+++ 210G 10 Nov 2004 15:21:17 -0000 1.2
@@ -1,7 +1,7 @@
1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port 1225 (IPv6 and IPv4)
-1999-03-02 09:44:33 10HmaX-0005vi-00 <= ph10@??? H=[127.0.0.1] P=smtp X=TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24 S=214
+1999-03-02 09:44:33 10HmaX-0005vi-00 <= ph10@??? H=[127.0.0.1] P=smtps X=TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24 S=215
1999-03-02 09:44:33 TLS error on connection from (rhu.barb) [::1] (gnutls_handshake): The peer did not send any certificate.
-1999-03-02 09:44:33 10HmaY-0005vi-00 <= ph10@??? H=[::1] P=smtp X=TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24 DN="C=UK,L=Cambridge,O=University of Cambridge,OU=Computing Service,CN=Philip Hazel" S=229
+1999-03-02 09:44:33 10HmaY-0005vi-00 <= ph10@??? H=[::1] P=smtps X=TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24 DN="C=UK,L=Cambridge,O=University of Cambridge,OU=Computing Service,CN=Philip Hazel" S=230
1999-03-02 09:44:33 Start queue run: pid=pppp -qf
1999-03-02 09:44:33 10HmaX-0005vi-00 => ph10 <ph10@???> R=abc T=local_delivery
1999-03-02 09:44:33 10HmaX-0005vi-00 Completed
Index: 211G
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/log/211G,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 211G 8 Oct 2004 14:49:31 -0000 1.1
+++ 211G 10 Nov 2004 15:21:17 -0000 1.2
@@ -1,6 +1,6 @@
1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port 1225 (IPv6 and IPv4)
1999-03-02 09:44:33 H=[::1] F=<ph10@???> rejected RCPT <ph10@???>: unacceptable cipher TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24
-1999-03-02 09:44:33 10HmaX-0005vi-00 <= ph10@??? H=[127.0.0.1] P=smtp X=TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24 S=214
+1999-03-02 09:44:33 10HmaX-0005vi-00 <= ph10@??? H=(rhu.barb) [127.0.0.1] P=smtps X=TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24 S=231
1999-03-02 09:44:33 Start queue run: pid=pppp -qf
1999-03-02 09:44:33 10HmaX-0005vi-00 => ph10 <ph10@???> R=abc T=local_delivery
1999-03-02 09:44:33 10HmaX-0005vi-00 Completed
Index: 225G
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/log/225G,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 225G 8 Oct 2004 14:49:31 -0000 1.1
+++ 225G 10 Nov 2004 15:21:17 -0000 1.2
@@ -1,6 +1,6 @@
1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port 1225 (IPv6 and IPv4)
1999-03-02 09:44:33 TLS error on connection from (rhu.barb) [::1] (gnutls_handshake): The peer did not send any certificate.
-1999-03-02 09:44:33 H=[127.0.0.1] F=<ph10@???> rejected RCPT <ph10@???>: certificate not verified: peerdn=
+1999-03-02 09:44:33 H=(rhu.barb) [127.0.0.1] F=<ph10@???> rejected RCPT <ph10@???>: certificate not verified: peerdn=
1999-03-02 09:44:33 TLS error on connection from (rhu.barb) [::1]: certificate verification failed (invalid)
1999-03-02 09:44:33 H=[127.0.0.1] F=<ph10@???> rejected RCPT <ph10@???>: certificate not verified: peerdn=C=UK,L=Cambridge,O=University of Cambridge,OU=Computing Service,CN=Philip Hazel
1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port 1225 (IPv6 and IPv4)
Index: 260
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/log/260,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- 260 4 Nov 2004 12:19:48 -0000 1.2
+++ 260 10 Nov 2004 15:21:17 -0000 1.3
@@ -17,7 +17,7 @@
1999-03-02 09:44:33 SMTP connection from [::1]:1112 I=[::1]:1225 (TCP/IP connection count = 1)
1999-03-02 09:44:33 10HmaY-0005vi-00 <= x@??? H=[::1]:1112 I=[::1]:1225 P=smtp S=145
1999-03-02 09:44:33 SMTP connection from [::1]:1112 I=[::1]:1225 closed by QUIT
-1999-03-02 09:44:33 SMTP connection from [127.0.0.1]:1113 I=[127.0.0.1]:1225 (TCP/IP connection count = 1)
+1999-03-02 09:44:33 SMTP connection from [127.0.0.1]:1113 I=[127.0.0.1]:1225 (TCP/IP connection count = 2)
1999-03-02 09:44:33 10HmaZ-0005vi-00 <= x@??? H=[127.0.0.1]:1113 I=[127.0.0.1]:1225 P=smtp S=151
1999-03-02 09:44:33 SMTP connection from [127.0.0.1]:1113 I=[127.0.0.1]:1225 closed by QUIT
1999-03-02 09:44:33 SMTP connection from [::1]:1114 I=[::1]:1225 (TCP/IP connection count = 1)
Index: 321G
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/log/321G,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 321G 8 Oct 2004 14:49:31 -0000 1.1
+++ 321G 10 Nov 2004 15:21:17 -0000 1.2
@@ -1,3 +1,3 @@
1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port 1225 (IPv6 and IPv4)
-1999-03-02 09:44:33 10HmaX-0005vi-00 <= ph10@??? H=[127.0.0.1] P=smtp X=TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24 S=214
+1999-03-02 09:44:33 10HmaX-0005vi-00 <= ph10@??? H=[127.0.0.1] P=smtps X=TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24 S=215
1999-03-02 09:44:33 H=(rhu.barb) [127.0.0.1] F=<ph10@???> rejected RCPT <ph10@???>: "You must encrypt"
Index: 210G.ph10
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/mail/210G.ph10,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 210G.ph10 8 Oct 2004 14:49:42 -0000 1.1
+++ 210G.ph10 10 Nov 2004 15:21:17 -0000 1.2
@@ -1,6 +1,6 @@
From ph10@??? Tue Mar 02 09:44:33 1999
Received: from [127.0.0.1]
- by myhost.test.ex with smtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24)
+ by myhost.test.ex with smtps (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24)
(Exim x.yz)
id 10HmaX-0005vi-00
for ph10@???; Tue, 2 Mar 1999 09:44:33 +0000
@@ -11,7 +11,7 @@
From ph10@??? Tue Mar 02 09:44:33 1999
Received: from [::1]
- by myhost.test.ex with smtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24)
+ by myhost.test.ex with smtps (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24)
(Exim x.yz)
id 10HmaY-0005vi-00
for ph10@???; Tue, 2 Mar 1999 09:44:33 +0000
Index: 211G.ph10
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/mail/211G.ph10,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 211G.ph10 8 Oct 2004 14:49:42 -0000 1.1
+++ 211G.ph10 10 Nov 2004 15:21:17 -0000 1.2
@@ -1,6 +1,6 @@
From ph10@??? Tue Mar 02 09:44:33 1999
-Received: from [127.0.0.1]
- by myhost.test.ex with smtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24)
+Received: from [127.0.0.1] (helo=rhu.barb)
+ by myhost.test.ex with smtps (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24)
(Exim x.yz)
id 10HmaX-0005vi-00
for ph10@???; Tue, 2 Mar 1999 09:44:33 +0000
Index: 225G
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/rejectlog/225G,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 225G 8 Oct 2004 14:49:51 -0000 1.1
+++ 225G 10 Nov 2004 15:21:17 -0000 1.2
@@ -1,3 +1,3 @@
-1999-03-02 09:44:33 H=[127.0.0.1] F=<ph10@???> rejected RCPT <ph10@???>: certificate not verified: peerdn=
+1999-03-02 09:44:33 H=(rhu.barb) [127.0.0.1] F=<ph10@???> rejected RCPT <ph10@???>: certificate not verified: peerdn=
1999-03-02 09:44:33 H=[127.0.0.1] F=<ph10@???> rejected RCPT <ph10@???>: certificate not verified: peerdn=C=UK,L=Cambridge,O=University of Cambridge,OU=Computing Service,CN=Philip Hazel
1999-03-02 09:44:33 H=[127.0.0.1] F=<ph10@???> rejected RCPT <ph10@???>: certificate not verified: peerdn=C=UK,L=Cambridge,O=University of Cambridge,OU=Computing Service,CN=Philip Hazel
Index: 211
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/scripts/211,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 211 8 Oct 2004 14:49:52 -0000 1.1
+++ 211 10 Nov 2004 15:21:17 -0000 1.2
@@ -33,6 +33,8 @@
??? 250
starttls
??? 220
+helo rhu.barb
+??? 250
mail from:<ph10@???>
??? 250
rcpt to:<ph10@???>
Index: 225
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/scripts/225,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 225 8 Oct 2004 14:49:52 -0000 1.1
+++ 225 10 Nov 2004 15:21:17 -0000 1.2
@@ -29,6 +29,8 @@
??? 250
starttls
??? 220
+helo rhu.barb
+??? 250
mail from:<ph10@???>
??? 250
rcpt to:<ph10@???>
Index: 211G
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/stdout/211G,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 211G 8 Oct 2004 14:50:13 -0000 1.1
+++ 211G 10 Nov 2004 15:21:17 -0000 1.2
@@ -76,6 +76,9 @@
SSL info: SSL negotiation finished successfully
SSL connection using EDH-RSA-DES-CBC3-SHA
Succeeded in starting TLS
+>>> helo rhu.barb
+??? 250
+<<< 250 myhost.test.ex Hello rhu.barb [127.0.0.1]
>>> mail from:<ph10@???>
??? 250
<<< 250 OK
Index: 225G
===================================================================
RCS file: /home/cvs/exim/exim-test-orig/AutoTest/stdout/225G,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 225G 8 Oct 2004 14:50:13 -0000 1.1
+++ 225G 10 Nov 2004 15:21:17 -0000 1.2
@@ -69,6 +69,9 @@
SSL info: SSL negotiation finished successfully
SSL connection using EDH-RSA-DES-CBC3-SHA
Succeeded in starting TLS
+>>> helo rhu.barb
+??? 250
+<<< 250 myhost.test.ex Hello rhu.barb [127.0.0.1]
>>> mail from:<ph10@???>
??? 250
<<< 250 OK