curl/tests/data/test936
Steve Holme eb84ca3ea8 sasl: Don't send authcid as authzid for the PLAIN mechanism as per RFC 4616
RFC 4616 specifies the authzid is optional in the client authentication
message and that the server will derive the authorisation identity
(authzid) from the authentication identity (authcid) when not specified
by the client.
2019-04-22 12:29:49 +01:00

77 lines
1.3 KiB
Plaintext

<testcase>
<info>
<keywords>
SMTP
SASL
SASL AUTH NTLM
SASL AUTH PLAIN
SASL DOWNGRADE
RFC4954
</keywords>
</info>
#
# Server-side
<reply>
<servercmd>
AUTH NTLM PLAIN
REPLY "AUTH NTLM" 334 NTLM supported
REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 334 Rubbish
REPLY * 501 AUTH exchange cancelled by client
REPLY "AUTH PLAIN" 334 PLAIN supported
REPLY AHVzZXIAc2VjcmV0 235 Authenticated
</servercmd>
</reply>
#
# Client-side
<client>
<server>
smtp
</server>
<features>
NTLM
!SSPI
</features>
<name>
SMTP NTLM authentication with SASL downgrade
</name>
<stdin>
mail body
</stdin>
<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>
smtp://%HOSTIP:%SMTPPORT/936 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
</command>
<precheck>
chkhostname curlhost
</precheck>
</client>
#
# Verify data after the test has been "shot"
<verify>
<protocol>
EHLO 936
AUTH NTLM
TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
*
AUTH PLAIN
AHVzZXIAc2VjcmV0
MAIL FROM:<sender@example.com>
RCPT TO:<recipient@example.com>
DATA
QUIT
</protocol>
<upload>
mail body
.
</upload>
</verify>
</testcase>