From 9555de77d7a57e65fff45a686f2430f46dbd38f5 Mon Sep 17 00:00:00 2001 From: "Heiko Schlittermann (HS12-RIPE)" Date: Fri, 14 Feb 2020 11:20:39 +0100 Subject: [PATCH 1/1] Testsuite: add test for hanging callout connections Fixed in bd95ffc2ba87fbd3c752df17bc8fd9c01586d45a --- test/confs/2040 | 46 +++++++++++++++++++++++++++++++++++ test/log/2040 | 3 +++ test/scripts/2000-GnuTLS/2040 | 19 +++++++++++++++ test/stdout/2040 | 21 ++++++++++++++++ 4 files changed, 89 insertions(+) create mode 100644 test/confs/2040 create mode 100644 test/log/2040 create mode 100644 test/scripts/2000-GnuTLS/2040 create mode 100644 test/stdout/2040 diff --git a/test/confs/2040 b/test/confs/2040 new file mode 100644 index 000000000..fcb468072 --- /dev/null +++ b/test/confs/2040 @@ -0,0 +1,46 @@ +# Exim test configuration 2040 +# The test uses the same config for two Exim processes +# +# ,------ callout -------. +# | | +# | .----------. | +# `--> PORT_S | | +# client-gnutls --> PORT_D Exim |----' +# `----------' + +.include DIR/aux-var/tls_conf_prefix + +primary_hostname = myhost.test.ex + +# ----- Main settings ----- + +tls_advertise_hosts = * + +tls_certificate = DIR/aux-fixed/cert1 +tls_privatekey = DIR/aux-fixed/cert1 + +acl_smtp_rcpt = acl_check_rcpt + +begin acl +acl_check_rcpt: + + accept condition = ${if eq{$received_port}{PORT_S}} + message = Accepted (rcpt on backend) + + accept verify = recipient/callout=no_cache + message = Accepted (rcpt via callout) + +begin routers +catchall: + driver = accept + transport = local_smtp + +begin transports +local_smtp: + driver = smtp + port = PORT_S + hosts = 127.0.0.1 + hosts_require_tls = * + allow_localhost + +# End diff --git a/test/log/2040 b/test/log/2040 new file mode 100644 index 000000000..d239d2cfd --- /dev/null +++ b/test/log/2040 @@ -0,0 +1,3 @@ + +******** SERVER ******** +1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port PORT_D port PORT_S diff --git a/test/scripts/2000-GnuTLS/2040 b/test/scripts/2000-GnuTLS/2040 new file mode 100644 index 000000000..c8780d217 --- /dev/null +++ b/test/scripts/2000-GnuTLS/2040 @@ -0,0 +1,19 @@ +# TLS server: uncork in pipelining mode +gnutls +exim -DSERVER=server -bd -oX PORT_D:PORT_S +**** +client-gnutls 127.0.0.1 PORT_D +??? 220 +EHLO rhu.barb +????250 +STARTTLS +??? 220 +EHLO rhu.barb +????250 +>>> MAIL FROM:<>\r\nRCPT TO:test@example.com\r\n +??? 250 OK +??? 250 Accepted (rcpt via callout) +QUIT +??? 2 +**** +killdaemon diff --git a/test/stdout/2040 b/test/stdout/2040 new file mode 100644 index 000000000..10f5cb155 --- /dev/null +++ b/test/stdout/2040 @@ -0,0 +1,21 @@ +Connecting to 127.0.0.1 port 1225 ... connected +??? 220 +<<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000 +>>> EHLO rhu.barb +????250 +>>> STARTTLS +??? 220 +<<< 220 TLS go ahead +Attempting to start TLS +Succeeded in starting TLS +>>> EHLO rhu.barb +????250 +>>> MAIL FROM:<>\r\nRCPT TO:test@example.com\r\n +??? 250 OK +<<< 250 OK +??? 250 Accepted (rcpt via callout) +<<< 250 Accepted (rcpt via callout) +>>> QUIT +??? 2 +<<< 221 myhost.test.ex closing connection +End of script -- 2.30.2