From 2f4a487a68473762367e894b726e4f3a9e0e7e5b Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 3 Jan 2012 16:12:58 +0100 Subject: tests: test IMAP, POP3 and SMTP over HTTP proxy tunnel --- tests/data/Makefile.am | 2 +- tests/data/test1319 | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++ tests/data/test1320 | 62 +++++++++++++++++++++++++++++++++++++++++++ tests/data/test1321 | 66 +++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 201 insertions(+), 1 deletion(-) create mode 100644 tests/data/test1319 create mode 100644 tests/data/test1320 create mode 100644 tests/data/test1321 (limited to 'tests') diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am index 6b661a216..f5894940a 100644 --- a/tests/data/Makefile.am +++ b/tests/data/Makefile.am @@ -81,7 +81,7 @@ test1208 test1209 test1210 test1211 \ test1220 \ test1300 test1301 test1302 test1303 test1304 test1305 \ test1306 test1307 test1308 test1309 test1310 test1311 test1312 test1313 \ -test1314 test1315 test1316 test1317 test1318 \ +test1314 test1315 test1316 test1317 test1318 test1319 test1320 test1321 \ test2000 test2001 test2002 test2003 test2004 EXTRA_DIST = $(TESTCASES) DISABLED diff --git a/tests/data/test1319 b/tests/data/test1319 new file mode 100644 index 000000000..ab31b9c25 --- /dev/null +++ b/tests/data/test1319 @@ -0,0 +1,72 @@ + + + +POP3 +RETR +HTTP CONNECT + + +# +# Server-side + +# When doing LIST, we get the default list output hard-coded in the test +# FTP server + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely + + + +HTTP/1.1 200 Mighty fine indeed + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely + + + +# +# Client-side + + +pop3 +http-proxy + + +POP3 fetch tunneled through HTTP proxy + + +pop3://%HOSTIP:%POP3PORT/1319 -p -x %HOSTIP:%PROXYPORT -u user:secret + + + +# +# Verify data after the test has been "shot" + + +^User-Agent: + + +USER user +PASS secret +RETR 1319 +QUIT + + +CONNECT %HOSTIP:%POP3PORT HTTP/1.1 +Host: %HOSTIP:%POP3PORT +User-Agent: curl/7.24.0-DEV (i686-pc-linux-gnu) libcurl/7.24.0-DEV OpenSSL/1.0.0e zlib/1.2.3.4 c-ares/1.7.6-DEV libidn/1.23 libssh2/1.4.0_DEV librtmp/2.2e +Proxy-Connection: Keep-Alive + + + + diff --git a/tests/data/test1320 b/tests/data/test1320 new file mode 100644 index 000000000..d8671f582 --- /dev/null +++ b/tests/data/test1320 @@ -0,0 +1,62 @@ + + + +SMTP +HTTP CONNECT + + + +# +# Server-side + + + +# +# Client-side + + +smtp +http-proxy + + +SMTP send tunneled trough HTTP proxy + + +From: different +To: another + +body + + +smtp://%HOSTIP:%SMTPPORT/user --mail-rcpt 1320@foo --mail-rcpt 1320@foobar.example --mail-from 1320@from -T - -p -x %HOSTIP:%PROXYPORT + + + +# +# Verify data after the test has been "shot" + + +EHLO user +MAIL FROM:<1320@from> +RCPT TO:<1320@foo> +RCPT TO:<1320@foobar.example> +DATA +QUIT + + +From: different +To: another + +body + +. + + +CONNECT %HOSTIP:%SMTPPORT HTTP/1.1 +Host: %HOSTIP:%SMTPPORT +User-Agent: curl/7.24.0-DEV (i686-pc-linux-gnu) libcurl/7.24.0-DEV OpenSSL/1.0.0e zlib/1.2.3.4 c-ares/1.7.6-DEV libidn/1.23 libssh2/1.4.0_DEV librtmp/2.2e +Proxy-Connection: Keep-Alive + + + + diff --git a/tests/data/test1321 b/tests/data/test1321 new file mode 100644 index 000000000..6050d9da2 --- /dev/null +++ b/tests/data/test1321 @@ -0,0 +1,66 @@ + + + +IMAP +FETCH + + + +# +# Server-side + + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely + + +HTTP/1.1 200 Mighty fine indeed + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely + + + +# +# Client-side + + +imap +http-proxy + + +IMAP FETCH tunneled through HTTP proxy + + +imap://%HOSTIP:%IMAPPORT/1321 -u user:secret -p -x %HOSTIP:%PROXYPORT + + + +# +# Verify data after the test has been "shot" + + +B LOGIN user secret +C SELECT 1321 +D FETCH 1 BODY[TEXT] +A LOGOUT + + +CONNECT %HOSTIP:%IMAPPORT HTTP/1.1 +Host: %HOSTIP:%IMAPPORT +User-Agent: curl/7.24.0-DEV (i686-pc-linux-gnu) libcurl/7.24.0-DEV OpenSSL/1.0.0e zlib/1.2.3.4 c-ares/1.7.6-DEV libidn/1.23 libssh2/1.4.0_DEV librtmp/2.2e +Proxy-Connection: Keep-Alive + + + + -- cgit v1.2.3