diff options
author | Jeremy Harris <jgh146exb@wizmail.org> | 2023-03-25 23:21:15 +0000 |
---|---|---|
committer | Jeremy Harris <jgh146exb@wizmail.org> | 2023-03-25 23:21:15 +0000 |
commit | 24cda181fb88542cf38db2beae5d0ddb37f59c5c (patch) | |
tree | ed6c3337099bf3846067833e25321a9deaf6ceea /test/scripts | |
parent | df0dc54a7666ef64b8a6681ab7b50a4836905203 (diff) | |
download | exim4-24cda181fb88542cf38db2beae5d0ddb37f59c5c.tar.gz |
Experimental_XCLIENT. Bug 2702
Diffstat (limited to 'test/scripts')
-rw-r--r-- | test/scripts/4032-xclient/4032 | 140 | ||||
-rw-r--r-- | test/scripts/4032-xclient/4033 | 62 | ||||
-rw-r--r-- | test/scripts/4032-xclient/REQUIRES | 1 | ||||
-rw-r--r-- | test/scripts/4034-xclient-tls/4034 | 179 | ||||
-rw-r--r-- | test/scripts/4034-xclient-tls/REQUIRES | 2 |
5 files changed, 384 insertions, 0 deletions
diff --git a/test/scripts/4032-xclient/4032 b/test/scripts/4032-xclient/4032 new file mode 100644 index 000000000..fa0d0b8c3 --- /dev/null +++ b/test/scripts/4032-xclient/4032 @@ -0,0 +1,140 @@ +# XCLIENT proxy on inbound smtp +# +munge loopback +# +exim -bd -DSERVER=server -oX PORT_D +**** +# +### (1) non-prox plain receive (not advertised) (2) XCLIENT refules when not advertised +client 127.0.0.1 PORT_D +??? 220 +EHLO plainclient +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250 HELP +MAIL FROM:<a@test.ex> +??? 250 +RCPT TO:<b@test.ex> +??? 250 +DATA +??? 354 +Subject: test + +body +. +??? 250 +XCLIENT NAME=proxylookedupname.net ADDR=127.0.0.2 PORT=4242 +??? 550 +QUIT +??? 221 +**** +# +### receive, (1) fully loaded (2) new conn (3) bad: transaction in progress (4) bad: missing EHLO after XCLIENT +client HOSTIPV4 PORT_D +??? 220 +EHLO xclientproxy +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-XCLIENT +??? 250 HELP +XCLIENT NAME=proxylookedupname.net ADDR=127.0.0.2 PORT=4242 DESTADDR=10.42.42.42 DESTPORT=25 LOGIN=hisloginname +??? 220 +EHLO clienthelo +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-XCLIENT +??? 250 HELP +MAIL FROM:<c@test.ex> +??? 250 +RCPT TO:<d@test.ex> +??? 250 +DATA +??? 354 +Subject: test + +body +. +??? 250 +XCLIENT NAME=[TEMPUNAVAIL] ADDR=127.0.0.3 PORT=4243 LOGIN=[UNAVAILABLE] +??? 220 +EHLO anotherhelo +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-XCLIENT +??? 250 HELP +MAIL FROM:<c2@test.ex> +??? 250 +RCPT TO:<d2@test.ex> +??? 250 +DATA +??? 354 +Subject: test + +body +. +??? 250 +MAIL FROM:<c2@test.ex> +??? 250 +XCLIENT NAME=bad.time.for.xclient +??? 503 +RSET +??? 250 +XCLIENT NAME=miss.ehlo.after.xclient +??? 220 +MAIL FROM:<bad@test.ex> +??? 503 +QUIT +??? 221 +**** +# +### (5) no operands to XCLIENT (6,7) unrecognised operands +client HOSTIPV4 PORT_D +??? 220 +EHLO xclientproxy +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-XCLIENT +??? 250 HELP +XCLIENT +??? 501 +XCLIENT NONO= +??? 501 +XCLIENT NAMEfoobar= +??? 501 +XCLIENT SIXSIX= +??? 501- +??? 501 Too many +???* +**** +# +### (7) operand with zero-len value (8) operand with no value +client HOSTIPV4 PORT_D +??? 220 +EHLO xclientproxy +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-XCLIENT +??? 250 HELP +XCLIENT NAME= +??? 501 +XCLIENT NAME +??? 501 +**** +# +# +killdaemon +no_msglog_check +no_stdout_check +no_stderr_check diff --git a/test/scripts/4032-xclient/4033 b/test/scripts/4032-xclient/4033 new file mode 100644 index 000000000..f3a4ecdeb --- /dev/null +++ b/test/scripts/4032-xclient/4033 @@ -0,0 +1,62 @@ +# XCLIENT proxy on inbound -bh +# +### (1) non-prox plain receive (not advertised) (2) XCLIENT refules when not advertised +exim -bh 127.0.0.1.4241 -oMi 127.0.0.1 +EHLO plainclient +MAIL FROM:<a@test.ex> +RCPT TO:<b@test.ex> +DATA +Subject: test + +body +. +XCLIENT NAME=proxylookedupname.net ADDR=127.0.0.2 PORT=4242 +QUIT +**** +# +### receive, (1) fully loaded (2) new conn (3) bad: transaction in progress +exim -bh HOSTIPV4.4241 -oMi HOSTIPV4 +EHLO xclientproxy +XCLIENT NAME=proxylookedupname.net ADDR=127.0.0.2 PORT=4242 DESTADDR=10.42.42.42 DESTPORT=25 LOGIN=hisloginname +EHLO clienthelo +MAIL FROM:<c@test.ex> +RCPT TO:<d@test.ex> +DATA +Subject: test + +body +. +XCLIENT NAME=[TEMPUNAVAIL] ADDR=127.0.0.3 PORT=4243 LOGIN=[UNAVAILABLE] +EHLO anotherhelo +MAIL FROM:<c2@test.ex> +RCPT TO:<d2@test.ex> +DATA +Subject: test + +body +. +MAIL FROM:<c2@test.ex> +XCLIENT NAME=bad.time.for.xclient +RSET +XCLIENT NAME=miss.ehlo.after.xclient +MAIL FROM:<bad@test.ex> +QUIT +**** +# +### (4) no operands to XCLIENT (5,6) unrecognised operands +exim -bh HOSTIPV4.4241 -oMi HOSTIPV4 +EHLO xclientproxy +XCLIENT +XCLIENT NONO= +XCLIENT NAMEfoobar= +XCLIENT SIXSIX= +**** +# +### (7) operand with zero-len value (8) operand with no value +exim -bh HOSTIPV4.4241 -oMi HOSTIPV4 +EHLO xclientproxy +XCLIENT NAME= +XCLIENT NAME +**** +# +no_stderr_check diff --git a/test/scripts/4032-xclient/REQUIRES b/test/scripts/4032-xclient/REQUIRES new file mode 100644 index 000000000..5f4d76eed --- /dev/null +++ b/test/scripts/4032-xclient/REQUIRES @@ -0,0 +1 @@ +support Experimental_XCLIENT diff --git a/test/scripts/4034-xclient-tls/4034 b/test/scripts/4034-xclient-tls/4034 new file mode 100644 index 000000000..c8a4f10c4 --- /dev/null +++ b/test/scripts/4034-xclient-tls/4034 @@ -0,0 +1,179 @@ +# XCLIENT under TLS +# +munge loopback +# +exim -bd -DSERVER=server -DOPTION -oX PORT_D +**** +# +### (1) non-prox plain receive (not advertised) (2) XCLIENT refusal when not advertised +client-anytls 127.0.0.1 PORT_D +??? 220 +EHLO plainclient +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-STARTTLS +??? 250 HELP +STARTTLS +??? 220 +EHLO plainclient +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250 HELP +MAIL FROM:<a@test.ex> +??? 250 +RCPT TO:<b@test.ex> +??? 250 +DATA +??? 354 +Subject: test + +body +. +??? 250 +XCLIENT NAME=proxylookedupname.net ADDR=127.0.0.2 PORT=4242 +??? 550 +QUIT +??? 221 +**** +# +### receive, (1) fully loaded (2) new conn (3) bad: transaction in progress (4) bad: missing EHLO after XCLIENT +client-anytls HOSTIPV4 PORT_D +??? 220 +EHLO xclientproxy +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-STARTTLS +??? 250-XCLIENT +??? 250 HELP +STARTTLS +??? 220 +EHLO xclientproxy +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-XCLIENT +??? 250 HELP +XCLIENT NAME=proxylookedupname.net ADDR=127.0.0.2 PORT=4242 DESTADDR=10.42.42.42 DESTPORT=25 LOGIN=hisloginname +??? 220 +EHLO clienthelo +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-XCLIENT +??? 250 HELP +MAIL FROM:<c@test.ex> +??? 250 +RCPT TO:<d@test.ex> +??? 250 +DATA +??? 354 +Subject: test + +body +. +??? 250 +XCLIENT NAME=[TEMPUNAVAIL] ADDR=127.0.0.3 PORT=4243 LOGIN=[UNAVAILABLE] +??? 220 +EHLO anotherhelo +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-XCLIENT +??? 250 HELP +MAIL FROM:<c2@test.ex> +??? 250 +RCPT TO:<d2@test.ex> +??? 250 +DATA +??? 354 +Subject: test + +body +. +??? 250 +MAIL FROM:<c2@test.ex> +??? 250 +XCLIENT NAME=bad.time.for.xclient +??? 503 +RSET +??? 250 +XCLIENT NAME=miss.ehlo.after.xclient +??? 220 +MAIL FROM:<bad@test.ex> +??? 503 +QUIT +??? 221 +**** +# +### (5) no operands to XCLIENT (6,7) unrecognised operands +client-anytls HOSTIPV4 PORT_D +??? 220 +EHLO xclientproxy +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-STARTTLS +??? 250-XCLIENT +??? 250 HELP +STARTTLS +??? 220 +EHLO xclientproxy +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-XCLIENT +??? 250 HELP +XCLIENT +??? 501 +XCLIENT NONO= +??? 501 +XCLIENT NAMEfoobar= +??? 501 +XCLIENT SIXSIX= +??? 501- +??? 501 Too many +???* +**** +# +### (7) operand with zero-len value (8) operand with no value +client-anytls HOSTIPV4 PORT_D +??? 220 +EHLO xclientproxy +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-STARTTLS +??? 250-XCLIENT +??? 250 HELP +STARTTLS +??? 220 +EHLO xclientproxy +??? 250- +??? 250-SIZE +??? 250-8BITMIME +??? 250-PIPELINING +??? 250-XCLIENT +??? 250 HELP +XCLIENT NAME= +??? 501 +XCLIENT NAME +??? 501 +**** +# +# +killdaemon +no_msglog_check +no_stdout_check +no_stderr_check diff --git a/test/scripts/4034-xclient-tls/REQUIRES b/test/scripts/4034-xclient-tls/REQUIRES new file mode 100644 index 000000000..4361afb13 --- /dev/null +++ b/test/scripts/4034-xclient-tls/REQUIRES @@ -0,0 +1,2 @@ +support Experimental_XCLIENT +feature _HAVE_TLS |