tests: Added SMTP SASL downgrade tests

This commit is contained in:
Steve Holme 2013-12-22 22:30:50 +00:00
parent f763d1b1bb
commit 7246255416
4 changed files with 199 additions and 1 deletions

View File

@ -76,7 +76,8 @@ test877 test878 test879 test880 test881 \
test900 test901 test902 test903 test904 test905 test906 test907 test908 \
test909 test910 test911 test912 test913 test914 test915 test916 test917 \
test918 test919 test920 test921 test922 test923 test924 test925 test926 \
test927 test928 test929 test930 test931 test932 test933 test934 \
test927 test928 test929 test930 test931 test932 test933 test934 test935 \
test936 test937
\
test1000 test1001 test1002 test1003 test1004 test1005 test1006 test1007 \
test1008 test1009 test1010 test1011 test1012 test1013 test1014 test1015 \

62
tests/data/test935 Normal file
View File

@ -0,0 +1,62 @@
<testcase>
<info>
<keywords>
SMTP
SMTP AUTH CRAM-MD5 SASL DOWNGRADE
RFC2195
RFC4954
</keywords>
</info>
#
# Server-side
<reply>
<servercmd>
AUTH CRAM-MD5 PLAIN
REPLY "AUTH CRAM-MD5" 334 Rubbish
REPLY * 501 AUTH exchange cancelled by client
REPLY "AUTH PLAIN" 334 PLAIN supported
REPLY dXNlcgB1c2VyAHNlY3JldA== 235 Authenticated
</servercmd>
</reply>
#
# Client-side
<client>
<server>
smtp
</server>
<features>
crypto
</features>
<name>
SMTP CRAM-MD5 authentication with SASL downgrade
</name>
<stdin>
mail body
</stdin>
<command>
smtp://%HOSTIP:%SMTPPORT/935 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
</command>
</client>
#
# Verify data after the test has been "shot"
<verify>
<protocol>
EHLO 935
AUTH CRAM-MD5
*
AUTH PLAIN
dXNlcgB1c2VyAHNlY3JldA==
MAIL FROM:<sender@example.com>
RCPT TO:<recipient@example.com>
DATA
QUIT
</protocol>
<upload>
mail body
.
</upload>
</verify>
</testcase>

72
tests/data/test936 Normal file
View File

@ -0,0 +1,72 @@
<testcase>
<info>
<keywords>
SMTP
SMTP AUTH NTLM 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 dXNlcgB1c2VyAHNlY3JldA== 235 Authenticated
</servercmd>
</reply>
#
# Client-side
<client>
<server>
smtp
</server>
<features>
NTLM
</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 testuser:testpass -T -
</command>
<precheck>
chkhostname curlhost
</precheck>
</client>
#
# Verify data after the test has been "shot"
<verify>
<protocol>
EHLO 936
AUTH NTLM
TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
*
AUTH PLAIN
dXNlcgB1c2VyAHNlY3JldA==
MAIL FROM:<sender@example.com>
RCPT TO:<recipient@example.com>
DATA
QUIT
</protocol>
<upload>
mail body
.
</upload>
</verify>
</testcase>

63
tests/data/test937 Normal file
View File

@ -0,0 +1,63 @@
<testcase>
<info>
<keywords>
SMTP
SMTP AUTH DIGEST-MD5 SASL DOWNGRADE
RFC2831
RFC4954
</keywords>
</info>
#
# Server-side
<reply>
<servercmd>
AUTH DIGEST-MD5 PLAIN
REPLY "AUTH DIGEST-MD5" 334 Rubbish
REPLY * 501 AUTH exchange cancelled by client
REPLY "AUTH PLAIN" 334 PLAIN supported
REPLY dXNlcgB1c2VyAHNlY3JldA== 235 Authenticated
</servercmd>
</reply>
#
# Client-side
<client>
<server>
smtp
</server>
<features>
debug
crypto
</features>
<name>
SMTP DIGEST-MD5 authentication with SASL downgrade
</name>
<stdin>
mail body
</stdin>
<command>
smtp://%HOSTIP:%SMTPPORT/937 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
</command>
</client>
#
# Verify data after the test has been "shot"
<verify>
<protocol>
EHLO 937
AUTH DIGEST-MD5
*
AUTH PLAIN
dXNlcgB1c2VyAHNlY3JldA==
MAIL FROM:<sender@example.com>
RCPT TO:<recipient@example.com>
DATA
QUIT
</protocol>
<upload>
mail body
.
</upload>
</verify>
</testcase>