ph10 2007/02/08 15:16:19 GMT
Modified files:
exim-doc/doc-txt ChangeLog
exim-src/src/transports smtp.c
exim-test runtest
exim-test/confs 0033 0179
exim-test/log 0179
Log:
Fix bad outgoing_port in log line for delivery of a re-used connection.
Revision Changes Path
1.477 +4 -0 exim/exim-doc/doc-txt/ChangeLog
1.36 +3 -1 exim/exim-src/src/transports/smtp.c
1.2 +0 -1 exim/exim-test/confs/0033
1.2 +1 -0 exim/exim-test/confs/0179
1.2 +2 -2 exim/exim-test/log/0179
1.24 +2 -2 exim/exim-test/runtest
Index: ChangeLog
===================================================================
RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
retrieving revision 1.476
retrieving revision 1.477
diff -u -r1.476 -r1.477
--- ChangeLog 7 Feb 2007 14:41:13 -0000 1.476
+++ ChangeLog 8 Feb 2007 15:16:19 -0000 1.477
@@ -1,4 +1,4 @@
-$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.476 2007/02/07 14:41:13 ph10 Exp $
+$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.477 2007/02/08 15:16:19 ph10 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
@@ -96,6 +96,10 @@
PH/23 Applied sieve patches from the maintainer "tracking the latest notify
draft, changing the syntax and factoring some duplicate code".
+
+PH/24 When the log selector "outgoing_port" was set, the port was shown as -1
+ for deliveries of the second and subsequent messages over the same SMTP
+ connection.
Exim version 4.66
Index: smtp.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/transports/smtp.c,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- smtp.c 6 Feb 2007 14:49:13 -0000 1.35
+++ smtp.c 8 Feb 2007 15:16:19 -0000 1.36
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/transports/smtp.c,v 1.35 2007/02/06 14:49:13 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/transports/smtp.c,v 1.36 2007/02/08 15:16:19 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -917,7 +917,8 @@
{
inblock.sock = outblock.sock =
smtp_connect(host, host_af, port, interface, ob->connect_timeout,
- ob->keepalive);
+ ob->keepalive); /* This puts port into host->port */
+
if (inblock.sock < 0)
{
set_errno(addrlist, (errno == ETIMEDOUT)? ERRNO_CONNECTTIMEOUT : errno,
@@ -1041,6 +1042,7 @@
{
inblock.sock = outblock.sock = fileno(stdin);
smtp_command = big_buffer;
+ host->port = port; /* Record the port that was used */
}
/* If TLS is available on this connection, whether continued or not, attempt to
Index: runtest
===================================================================
RCS file: /home/cvs/exim/exim-test/runtest,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- runtest 31 Jan 2007 16:52:12 -0000 1.23
+++ runtest 8 Feb 2007 15:16:19 -0000 1.24
@@ -1,6 +1,6 @@
#! /usr/bin/perl -w
-# $Cambridge: exim/exim-test/runtest,v 1.23 2007/01/31 16:52:12 ph10 Exp $
+# $Cambridge: exim/exim-test/runtest,v 1.24 2007/02/08 15:16:19 ph10 Exp $
###############################################################################
# This is the controlling script for the "new" test suite for Exim. It should #
@@ -521,8 +521,8 @@
s/\(port=(\d+)/"(port=" . new_value($1, "%s", \$next_port)/e;
# This handles "connection from" and the like, when the port is given
- if (!/listening for SMTP on/ && !/Connecting to/ && !/=>/ && !/\*>/ &&
- !/Connection refused/)
+ if (!/listening for SMTP on/ && !/Connecting to/ && !/=>/ && !/->/
+ && !/\*>/ && !/Connection refused/)
{
s/\[([a-z\d:]+|\d+(?:\.\d+){3})\]:(\d+)/"[".$1."]:".new_value($2,"%s",\$next_port)/ie;
}
Index: 0033
===================================================================
RCS file: /home/cvs/exim/exim-test/confs/0033,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 0033 7 Feb 2006 10:34:25 -0000 1.1
+++ 0033 8 Feb 2007 15:16:19 -0000 1.2
@@ -13,7 +13,6 @@
domainlist local_domains = test.ex : *.test.ex
-
# ----- Routers -----
begin routers
Index: 0179
===================================================================
RCS file: /home/cvs/exim/exim-test/confs/0179,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 0179 7 Feb 2006 10:34:25 -0000 1.1
+++ 0179 8 Feb 2007 15:16:19 -0000 1.2
@@ -12,6 +12,7 @@
# ----- Main settings -----
queue_run_in_order
+log_selector = +outgoing_port
# ----- Routers -----
Index: 0179
===================================================================
RCS file: /home/cvs/exim/exim-test/log/0179,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 0179 7 Feb 2006 10:34:46 -0000 1.1
+++ 0179 8 Feb 2007 15:16:19 -0000 1.2
@@ -1,8 +1,8 @@
1999-03-02 09:44:33 10HmaX-0005vi-00 <= CALLER@??? U=CALLER P=local S=sss
1999-03-02 09:44:33 10HmaY-0005vi-00 <= CALLER@??? U=CALLER P=local S=sss
1999-03-02 09:44:33 Start queue run: pid=pppp -qqf
-1999-03-02 09:44:33 10HmaX-0005vi-00 => userx@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]
+1999-03-02 09:44:33 10HmaX-0005vi-00 => userx@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]:1224
1999-03-02 09:44:33 10HmaX-0005vi-00 Completed
-1999-03-02 09:44:33 10HmaY-0005vi-00 => abcd@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]*
+1999-03-02 09:44:33 10HmaY-0005vi-00 => abcd@??? R=all T=smtp H=127.0.0.1 [127.0.0.1]:1224*
1999-03-02 09:44:33 10HmaY-0005vi-00 Completed
1999-03-02 09:44:33 End queue run: pid=pppp -qqf