MCPcopy Create free account
hub / github.com/MailCore/mailcore2 / capability

Method capability

src/core/imap/MCIMAPSession.cpp:4132–4165  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4130}
4131
4132IndexSet * IMAPSession::capability(ErrorCode * pError)
4133{
4134 int r;
4135 struct mailimap_capability_data * cap;
4136
4137 connectIfNeeded(pError);
4138 if (* pError != ErrorNone)
4139 return NULL;
4140
4141 r = mailimap_capability(mImap, &cap);
4142 if (r == MAILIMAP_ERROR_STREAM) {
4143 mShouldDisconnect = true;
4144 * pError = ErrorConnection;
4145 return NULL;
4146 }
4147 else if (r == MAILIMAP_ERROR_PARSE) {
4148 mShouldDisconnect = true;
4149 * pError = ErrorParse;
4150 return NULL;
4151 }
4152 else if (hasError(r)) {
4153 * pError = ErrorCapability;
4154 return NULL;
4155 }
4156
4157 mailimap_capability_data_free(cap);
4158
4159 IndexSet * result = new IndexSet();
4160 capabilitySetWithSessionState(result);
4161
4162 * pError = ErrorNone;
4163 result->autorelease();
4164 return result;
4165}
4166
4167void IMAPSession::capabilitySetWithSessionState(IndexSet * capabilities)
4168{

Callers 2

mainMethod · 0.80
testIMAPCapabilityFunction · 0.80

Calls 3

mailimap_capabilityClass · 0.85
hasErrorFunction · 0.85
autoreleaseMethod · 0.45

Tested by 1

testIMAPCapabilityFunction · 0.64