1<testcase>
2<info>
3<keywords>
4SMTP
5SASL
6SASL AUTH OAUTH2
7RFC4954
8RFC6749
9RFC7628
10</keywords>
11</info>
12
13#
14# Server-side
15<reply>
16<servercmd>
17AUTH OAUTHBEARER
18REPLY AUTH 334 OAUTHBEARER supported
19REPLY dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwNQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ== 334 eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0
20REPLY AQ== 535 Username and Password not accepted. Learn more at\r\n535 http://support.example.com/mail/oauth
21</servercmd>
22</reply>
23
24#vi
25# Client-side
26<client>
27<server>
28smtp
29</server>
30 <name>
31SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation
32 </name>
33<stdin>
34mail body
35</stdin>
36 <command>
37smtp://%HOSTIP:%SMTPPORT/948 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T -
38</command>
39# The protocol section doesn't support ways of specifing the raw data in the
40# base64 encoded message so we must assert this
41<precheck>
42perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%SMTPPORT' ne '9005' );"
43</precheck>
44</client>
45
46#
47# Verify data after the test has been "shot"
48<verify>
49# 67 - CURLE_LOGIN_DENIED
50<errorcode>
5167
52</errorcode>
53#
54# The multi interface considers a broken "CONNECT" as a prematurely broken
55# transfer and such a connection will not get a "QUIT"
56<protocol>
57EHLO 948
58AUTH OAUTHBEARER
59dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwNQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==
60AQ==
61</protocol>
62</verify>
63</testcase>
64