aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/imap/MCIMAPSession.cc8
-rw-r--r--src/core/imap/MCIMAPSession.h2
-rw-r--r--src/objc/abstract/MCOConstants.h2
3 files changed, 12 insertions, 0 deletions
diff --git a/src/core/imap/MCIMAPSession.cc b/src/core/imap/MCIMAPSession.cc
index b44efdfd..30047c0d 100644
--- a/src/core/imap/MCIMAPSession.cc
+++ b/src/core/imap/MCIMAPSession.cc
@@ -2976,6 +2976,10 @@ IndexSet * IMAPSession::capability(ErrorCode * pError)
result->addIndex(IMAPCapabilityQResync);
mQResyncEnabled = true;
}
+ if (mailimap_has_xoauth2(mImap)) {
+ result->addIndex(IMAPCapabilityXOAuth2);
+ mXOauth2Enabled = true;
+ }
* pError = ErrorNone;
result->autorelease();
@@ -3007,6 +3011,10 @@ bool IMAPSession::isIdentityEnabled()
return mIdentityEnabled;
}
+bool IMAPSession::isXOAuthEnabled() {
+ return mXOauth2Enabled;
+}
+
bool IMAPSession::isDisconnected()
{
return mState == STATE_DISCONNECTED;
diff --git a/src/core/imap/MCIMAPSession.h b/src/core/imap/MCIMAPSession.h
index 09732edd..2ea3443b 100644
--- a/src/core/imap/MCIMAPSession.h
+++ b/src/core/imap/MCIMAPSession.h
@@ -137,6 +137,7 @@ namespace mailcore {
virtual bool isCondstoreEnabled();
virtual bool isQResyncEnabled();
virtual bool isIdentityEnabled();
+ virtual bool isXOAuthEnabled();
virtual void setConnectionLogger(ConnectionLogger * logger);
virtual ConnectionLogger * connectionLogger();
@@ -179,6 +180,7 @@ namespace mailcore {
bool mCondstoreEnabled;
bool mQResyncEnabled;
bool mIdentityEnabled;
+ bool mXOauth2Enabled;
String * mWelcomeString;
bool mNeedsMboxMailWorkaround;
uint32_t mUIDValidity;
diff --git a/src/objc/abstract/MCOConstants.h b/src/objc/abstract/MCOConstants.h
index 58239811..4855e3b6 100644
--- a/src/objc/abstract/MCOConstants.h
+++ b/src/objc/abstract/MCOConstants.h
@@ -246,6 +246,8 @@ typedef enum {
MCOIMAPCapabilityAuthSKey,
/** AUTH=SRP Capability.*/
MCOIMAPCapabilityAuthSRP,
+ /** AUTH=XOAUTH2 Capability.*/
+ MCOIMAPCapabilityXOAuth2
} MCOIMAPCapability;
/** Error domain for mailcore.*/