1<testcase> 2<info> 3<keywords> 4IMAP 5SASL 6SASL AUTH OAUTH2 7SASL-IR 8RFC6749 9RFC7628 10</keywords> 11</info> 12 13# 14# Server-side 15<reply> 16<servercmd> 17AUTH OAUTHBEARER 18CAPA SASL-IR 19REPLY AUTHENTICATE + eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0= 20REPLY AQ== A002 NO Authentication failed 21</servercmd> 22</reply> 23 24# 25# Client-side 26<client> 27<server> 28imap 29</server> 30 <name> 31IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response 32 </name> 33 <command> 34'imap://%HOSTIP:%IMAPPORT/845/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM 35</command> 36# The protocol section doesn't support ways of specifying the raw data in the 37# base64 encoded message so we must assert this 38<precheck> 39perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%IMAPPORT' ne '9003' );" 40</precheck> 41</client> 42 43# 44# Verify data after the test has been "shot" 45<verify> 46# 67 - CURLE_LOGIN_DENIED 47<errorcode> 4867 49</errorcode> 50# 51# The multi interface considers a broken "CONNECT" as a prematurely broken 52# transfer and such a connection will not get a "LOGOUT" 53<protocol> 54A001 CAPABILITY 55A002 AUTHENTICATE OAUTHBEARER dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMwFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ== 56AQ== 57</protocol> 58</verify> 59</testcase> 60