2015-11-14 19:16:04 +08:00
|
|
|
<testcase>
|
|
|
|
<info>
|
|
|
|
<keywords>
|
|
|
|
IMAP
|
|
|
|
SASL
|
|
|
|
SASL AUTH OAUTH2
|
|
|
|
RFC6749
|
|
|
|
RFC7628
|
|
|
|
</keywords>
|
|
|
|
</info>
|
|
|
|
|
|
|
|
#
|
|
|
|
# Server-side
|
|
|
|
<reply>
|
|
|
|
<servercmd>
|
|
|
|
AUTH OAUTHBEARER
|
|
|
|
REPLY AUTHENTICATE +
|
|
|
|
REPLY dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMwFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ== A002 OK AUTHENTICATE completed
|
|
|
|
</servercmd>
|
|
|
|
<data>
|
|
|
|
From: me@somewhere
|
|
|
|
To: fake@nowhere
|
|
|
|
|
|
|
|
body
|
|
|
|
|
|
|
|
--
|
|
|
|
yours sincerely
|
|
|
|
</data>
|
|
|
|
</reply>
|
|
|
|
|
|
|
|
#
|
|
|
|
# Client-side
|
|
|
|
<client>
|
|
|
|
<server>
|
|
|
|
imap
|
|
|
|
</server>
|
|
|
|
<name>
|
|
|
|
IMAP OAuth 2.0 (OAUTHBEARER) authentication
|
|
|
|
</name>
|
|
|
|
<command>
|
2018-07-31 19:12:18 +08:00
|
|
|
'imap://%HOSTIP:%IMAPPORT/842/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
|
2015-11-14 19:16:04 +08:00
|
|
|
</command>
|
2017-03-26 23:02:22 +08:00
|
|
|
# The protocol section doesn't support ways of specifying the raw data in the
|
2015-12-04 07:31:24 +08:00
|
|
|
# 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 07:10:02 +08:00
|
|
|
<precheck>
|
|
|
|
perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%IMAPPORT' ne '9003' );"
|
|
|
|
</precheck>
|
2015-11-14 19:16:04 +08:00
|
|
|
</client>
|
|
|
|
|
|
|
|
#
|
|
|
|
# Verify data after the test has been "shot"
|
|
|
|
<verify>
|
|
|
|
<protocol>
|
|
|
|
A001 CAPABILITY
|
|
|
|
A002 AUTHENTICATE OAUTHBEARER
|
|
|
|
dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMwFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==
|
|
|
|
A003 SELECT 842
|
|
|
|
A004 FETCH 1 BODY[]
|
|
|
|
A005 LOGOUT
|
|
|
|
</protocol>
|
|
|
|
</verify>
|
|
|
|
</testcase>
|