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