1<testcase>
2<info>
3<keywords>
4SMTP
5SASL
6SASL AUTH NTLM
7SASL AUTH PLAIN
8SASL DOWNGRADE
9RFC4954
10</keywords>
11</info>
12
13#
14# Server-side
15<reply>
16<servercmd>
17AUTH NTLM PLAIN
18REPLY "AUTH NTLM" 334 NTLM supported
19REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 334 Rubbish
20REPLY * 501 AUTH exchange cancelled by client
21REPLY "AUTH PLAIN" 334 PLAIN supported
22REPLY dXNlcgB1c2VyAHNlY3JldA== 235 Authenticated
23</servercmd>
24</reply>
25
26#
27# Client-side
28<client>
29<server>
30smtp
31</server>
32<features>
33NTLM
34!SSPI
35</features>
36 <name>
37SMTP NTLM authentication with SASL downgrade
38 </name>
39<stdin>
40mail body
41</stdin>
42 <setenv>
43# we force our own host name, in order to make the test machine independent
44CURL_GETHOSTNAME=curlhost
45# we try to use the LD_PRELOAD hack, if not a debug build
46LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
47 </setenv>
48 <command>
49smtp://%HOSTIP:%SMTPPORT/936 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
50</command>
51<precheck>
52chkhostname curlhost
53</precheck>
54</client>
55
56#
57# Verify data after the test has been "shot"
58<verify>
59<protocol>
60EHLO 936
61AUTH NTLM
62TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
63*
64AUTH PLAIN
65dXNlcgB1c2VyAHNlY3JldA==
66MAIL FROM:<sender@example.com>
67RCPT TO:<recipient@example.com>
68DATA
69QUIT
70</protocol>
71<upload>
72mail body
73.
74</upload>
75</verify>
76</testcase>
77