]> granicus.if.org Git - curl/commitdiff
tests: Added IMAP SASL downgrade tests
authorSteve Holme <steve_holme@hotmail.com>
Sun, 22 Dec 2013 22:10:50 +0000 (22:10 +0000)
committerSteve Holme <steve_holme@hotmail.com>
Mon, 23 Dec 2013 07:17:31 +0000 (07:17 +0000)
tests/data/Makefile.am
tests/data/test833 [new file with mode: 0644]
tests/data/test834 [new file with mode: 0644]
tests/data/test835 [new file with mode: 0644]

index b2a223bfc62350e2e007137592f3acf45381ab89..a7fb18e07f4eba3f1bf297d8e5f7637f1e0ea6a4 100644 (file)
@@ -66,7 +66,7 @@ test709 test710 test711 test712 \
 test800 test801 test802 test803 test804 test805 test806 test807 test808 \
 test809 test810 test811 test812 test813 test814 test815 test816 test817 \
 test818 test819 test820 test821 test822 test823 test824 test825 test826 \
-test827 test828 test829 test830 test831 test832 \
+test827 test828 test829 test830 test831 test832 test833 test834 test835 \
 \
 test850 test851 test852 test853 test854 test855 test856 test857 test858 \
 test859 test860 test861 test862 test863 test864 test865 test866 test867 \
diff --git a/tests/data/test833 b/tests/data/test833
new file mode 100644 (file)
index 0000000..b5210c3
--- /dev/null
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+IMAP AUTH CRAM-MD5 SASL DOWNGRADE
+RFC2195
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH CRAM-MD5 PLAIN
+REPLY "AUTHENTICATE CRAM-MD5" + Rubbish
+REPLY * A002 NO AUTH exchange cancelled by client
+REPLY "AUTHENTICATE PLAIN" +
+REPLY dXNlcgB1c2VyAHNlY3JldA== A003 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere\r
+To: fake@nowhere\r
+\r
+body\r
+\r
+--\r
+  yours sincerely\r
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+crypto
+</features>
+ <name>
+IMAP CRAM-MD5 authentication with SASL downgrade
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/833/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY\r
+A002 AUTHENTICATE CRAM-MD5\r
+*\r
+A003 AUTHENTICATE PLAIN\r
+dXNlcgB1c2VyAHNlY3JldA==\r
+A004 SELECT 833\r
+A005 FETCH 1 BODY[]\r
+A006 LOGOUT\r
+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test834 b/tests/data/test834
new file mode 100644 (file)
index 0000000..f90c3b4
--- /dev/null
@@ -0,0 +1,72 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+IMAP AUTH NTLM SASL DOWNGRADE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM PLAIN
+REPLY "AUTHENTICATE NTLM" +
+REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + Rubbish
+REPLY * A002 NO AUTH exchange cancelled by client
+REPLY "AUTHENTICATE PLAIN" +
+REPLY dXNlcgB1c2VyAHNlY3JldA== A003 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere\r
+To: fake@nowhere\r
+\r
+body\r
+\r
+--\r
+  yours sincerely\r
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+NTLM
+</features>
+ <name>
+IMAP NTLM authentication with SASL downgrade
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/834/;UID=1' -u user:secret
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY\r
+A002 AUTHENTICATE NTLM\r
+TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=\r
+*\r
+A003 AUTHENTICATE PLAIN\r
+dXNlcgB1c2VyAHNlY3JldA==\r
+A004 SELECT 834\r
+A005 FETCH 1 BODY[]\r
+A006 LOGOUT\r
+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test835 b/tests/data/test835
new file mode 100644 (file)
index 0000000..c0a1283
--- /dev/null
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+IMAP AUTH DIGEST-MD5 SASL DOWNGRADE
+RFC2831
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH DIGEST-MD5 PLAIN
+REPLY "AUTHENTICATE DIGEST-MD5" + Rubbish
+REPLY * A002 NO AUTH exchange cancelled by client
+REPLY "AUTHENTICATE PLAIN" +
+REPLY dXNlcgB1c2VyAHNlY3JldA== A003 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere\r
+To: fake@nowhere\r
+\r
+body\r
+\r
+--\r
+  yours sincerely\r
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+debug
+crypto
+</features>
+ <name>
+IMAP DIGEST-MD5 authentication with SASL downgrade
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/835/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY\r
+A002 AUTHENTICATE DIGEST-MD5\r
+*\r
+A003 AUTHENTICATE PLAIN\r
+dXNlcgB1c2VyAHNlY3JldA==\r
+A004 SELECT 835\r
+A005 FETCH 1 BODY[]\r
+A006 LOGOUT\r
+</protocol>
+</verify>
+</testcase>