| <testcase> |
| <info> |
| <keywords> |
| SMTP |
| SASL |
| SASL AUTH OAUTH2 |
| SASL-IR |
| RFC4954 |
| RFC6749 |
| RFC7628 |
| </keywords> |
| </info> |
| |
| # |
| # Server-side |
| <reply> |
| <servercmd> |
| AUTH OAUTHBEARER |
| REPLY AUTH 235 Authenticated |
| </servercmd> |
| </reply> |
| |
| # |
| # Client-side |
| <client> |
| <server> |
| smtp |
| </server> |
| <name> |
| SMTP OAuth 2.0 (OAUTHBEARER) authentication with initial response |
| </name> |
| <stdin> |
| mail body
|
| </stdin> |
| <command> |
| smtp://%HOSTIP:%SMTPPORT/947 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - |
| </command> |
| # The protocol section doesn't support ways of specifing the raw data in the |
| # base64 encoded message so we must assert this |
| <precheck> |
| perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%SMTPPORT' ne '9005' );" |
| </precheck> |
| </client> |
| |
| # |
| # Verify data after the test has been "shot" |
| <verify> |
| <protocol> |
| EHLO 947
|
| AUTH OAUTHBEARER dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwNQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==
|
| MAIL FROM:<sender@example.com>
|
| RCPT TO:<recipient@example.com>
|
| DATA
|
| QUIT
|
| </protocol> |
| <upload> |
| mail body
|
| .
|
| </upload> |
| </verify> |
| </testcase> |