2015-11-15 20:36:59 +03:00
|
|
|
<testcase>
|
|
|
|
<info>
|
|
|
|
<keywords>
|
|
|
|
SMTP
|
|
|
|
SASL
|
|
|
|
SASL AUTH OAUTH2
|
|
|
|
SASL-IR
|
|
|
|
RFC4954
|
|
|
|
RFC6749
|
|
|
|
RFC7628
|
|
|
|
</keywords>
|
|
|
|
</info>
|
|
|
|
|
|
|
|
#
|
|
|
|
# Server-side
|
|
|
|
<reply>
|
|
|
|
<servercmd>
|
|
|
|
AUTH OAUTHBEARER
|
|
|
|
REPLY AUTH 334 eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0
|
|
|
|
REPLY AQ== 535 Username and Password not accepted. Learn more at\r\n535 http://support.example.com/mail/oauth
|
|
|
|
</servercmd>
|
|
|
|
</reply>
|
|
|
|
|
|
|
|
#
|
|
|
|
# Client-side
|
|
|
|
<client>
|
|
|
|
<server>
|
|
|
|
smtp
|
|
|
|
</server>
|
|
|
|
<name>
|
|
|
|
SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response
|
|
|
|
</name>
|
|
|
|
<stdin>
|
|
|
|
mail body
|
|
|
|
</stdin>
|
|
|
|
<command>
|
|
|
|
smtp://%HOSTIP:%SMTPPORT/949 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T -
|
|
|
|
</command>
|
2015-12-04 02:31:24 +03:00
|
|
|
# The protocol section doesn't support ways of specifing the raw data in the
|
|
|
|
# base64 encoded message so we must assert this
|
tests: Disable the OAUTHBEARER tests when using a non-default port number
Tests 842, 843, 844, 845, 887, 888, 889, 890, 946, 947, 948 and 949 fail
if a custom port number is specified via the -b option of runtests.pl.
Suggested by: Kamil Dudka
Bug: http://curl.haxx.se/mail/lib-2015-12/0003.html
2015-12-03 02:10:02 +03:00
|
|
|
<precheck>
|
|
|
|
perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%SMTPPORT' ne '9005' );"
|
|
|
|
</precheck>
|
2015-11-15 20:36:59 +03:00
|
|
|
</client>
|
|
|
|
|
|
|
|
#
|
|
|
|
# Verify data after the test has been "shot"
|
|
|
|
<verify>
|
|
|
|
# 67 - CURLE_LOGIN_DENIED
|
|
|
|
<errorcode>
|
|
|
|
67
|
|
|
|
</errorcode>
|
|
|
|
#
|
|
|
|
# The multi interface considers a broken "CONNECT" as a prematurely broken
|
|
|
|
# transfer and such a connection will not get a "QUIT"
|
|
|
|
<protocol>
|
|
|
|
EHLO 949
|
|
|
|
AUTH OAUTHBEARER dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwNQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==
|
|
|
|
AQ==
|
|
|
|
</protocol>
|
|
|
|
</verify>
|
|
|
|
</testcase>
|