aerc/worker/imap
Julian Pidancet 9217dbeea4 imap,smtp: add XOAUTH2 support
Add XOAUTH2 authentication support for IMAP and SMTP. Although XOAUTH2
is now deprecated in favor of OAuthBearer, it is the only way to connect
to Office365 since Basic Auth is now completely removed.

Since XOAUTH2 is very similar to OAuthBearer and uses the same
configuration parameters, this is basically a copy-paste of the existing
OAuthBearer code.

However, XOAUTH2 support was removed from go-sasl library, so this
change reimports the code that was removed from go-sasl and offers it
a new home in lib/xoauth2.go. Hopefully it shouldn't be too hard to
maintain, being less than 50 SLOC.

Link: https://github.com/emersion/go-sasl/commit/7bfe0ed36a21
Implements: https://todo.sr.ht/~rjarry/aerc/78
Signed-off-by: Julian Pidancet <julian.pidancet@oracle.com>
Tested-by: Inwit <inwit@sindominio.net>
Acked-by: Tim Culverhouse <tim@timculverhouse.com>
2022-10-01 15:47:33 +02:00
..
cache.go cache: fetch flags from UI 2022-09-20 21:10:35 +02:00
checkmail.go imap: stop checkmail if there are pending actions 2022-09-29 17:14:07 +02:00
configure.go imap,smtp: add XOAUTH2 support 2022-10-01 15:47:33 +02:00
connect.go imap,smtp: add XOAUTH2 support 2022-10-01 15:47:33 +02:00
create.go go vet: composite literal uses unkeyed fields 2022-03-18 13:33:16 +01:00
fetch.go backends: send MessageInfoError on header fetching error 2022-09-25 11:54:27 +02:00
flags.go imap: send message info updates for bulk flag ops 2022-09-29 16:41:42 +02:00
idler.go idler: fix data race for access to idleing and waiting 2022-09-26 17:32:00 +02:00
imap.go go.mod: change base git url 2021-11-05 10:21:45 +01:00
list.go lint: apply new formatting rules 2022-08-01 10:44:52 +02:00
movecopy.go imap: implement MoveMessages handling 2022-08-22 15:46:53 +02:00
observer.go lint: apply new formatting rules 2022-08-01 10:44:52 +02:00
open.go lint: ensure errors are at least logged (errcheck) 2022-08-04 21:57:57 +02:00
remove.go go vet: composite literal uses unkeyed fields 2022-03-18 13:33:16 +01:00
search.go lint: homogenize operations and minor fixes (gocritic) 2022-08-04 21:58:01 +02:00
seqmap.go imap: create copy of uids to retain sort order 2022-08-22 15:46:49 +02:00
seqmap_test.go imap: create copy of uids to retain sort order 2022-08-22 15:46:49 +02:00
worker.go imap,smtp: add XOAUTH2 support 2022-10-01 15:47:33 +02:00