1<testcase>
2<info>
3<keywords>
4IMAP
5IMAP AUTH NTLM
6IMAP AUTH PLAIN
7SASL DOWNGRADE
8</keywords>
9</info>
10
11#
12# Server-side
13<reply>
14<servercmd>
15AUTH NTLM PLAIN
16REPLY "AUTHENTICATE NTLM" +
17REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + Rubbish
18REPLY * A002 NO AUTH exchange cancelled by client
19REPLY "AUTHENTICATE PLAIN" +
20REPLY dXNlcgB1c2VyAHNlY3JldA== A003 OK AUTHENTICATE completed
21</servercmd>
22<data>
23From: me@somewhere
24To: fake@nowhere
25
26body
27
28--
29  yours sincerely
30</data>
31</reply>
32
33#
34# Client-side
35<client>
36<server>
37imap
38</server>
39<features>
40NTLM
41!SSPI
42</features>
43 <name>
44IMAP NTLM authentication with SASL downgrade
45 </name>
46 <setenv>
47# we force our own host name, in order to make the test machine independent
48CURL_GETHOSTNAME=curlhost
49# we try to use the LD_PRELOAD hack, if not a debug build
50LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
51 </setenv>
52 <command>
53'imap://%HOSTIP:%IMAPPORT/834/;UID=1' -u user:secret
54</command>
55<precheck>
56chkhostname curlhost
57</precheck>
58</client>
59
60#
61# Verify data after the test has been "shot"
62<verify>
63<protocol>
64A001 CAPABILITY
65A002 AUTHENTICATE NTLM
66TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
67*
68A003 AUTHENTICATE PLAIN
69dXNlcgB1c2VyAHNlY3JldA==
70A004 SELECT 834
71A005 FETCH 1 BODY[]
72A006 LOGOUT
73</protocol>
74</verify>
75</testcase>
76