dnl IDLE doesn't really belong to banner. It's there just to make Blackberries
dnl happy, because otherwise BIS server disables push email.
capability_banner="IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE"
-capability="$capability_banner SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE SNIPPET=FUZZY PREVIEW=FUZZY"
+capability="$capability_banner SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE SNIPPET=FUZZY PREVIEW=FUZZY STATUS=SIZE"
AC_DEFINE_UNQUOTED(CAPABILITY_STRING, "$capability", [IMAP capabilities])
AC_DEFINE_UNQUOTED(CAPABILITY_BANNER_STRING, "$capability_banner", [IMAP capabilities advertised in banner])
flags |= IMAP_STATUS_ITEM_UNSEEN;
else if (strcmp(item, "HIGHESTMODSEQ") == 0)
flags |= IMAP_STATUS_ITEM_HIGHESTMODSEQ;
+ else if (strcmp(item, "SIZE") == 0)
+ flags |= IMAP_STATUS_ITEM_SIZE;
else if (strcmp(item, "X-SIZE") == 0)
flags |= IMAP_STATUS_ITEM_X_SIZE;
else if (strcmp(item, "X-GUID") == 0)
client_enable(client, imap_feature_condstore);
status |= STATUS_HIGHESTMODSEQ;
}
- if (HAS_ALL_BITS(items->flags, IMAP_STATUS_ITEM_X_SIZE))
+ if (HAS_ANY_BITS(items->flags, IMAP_STATUS_ITEM_SIZE |
+ IMAP_STATUS_ITEM_X_SIZE))
metadata |= MAILBOX_METADATA_VIRTUAL_SIZE;
if (HAS_ALL_BITS(items->flags, IMAP_STATUS_ITEM_X_GUID))
metadata |= MAILBOX_METADATA_GUID;
str_printfa(str, "HIGHESTMODSEQ %"PRIu64" ",
status->highest_modseq);
}
+ if (HAS_ALL_BITS(items->flags, IMAP_STATUS_ITEM_SIZE)) {
+ str_printfa(str, "SIZE %"PRIu64" ",
+ result->metadata.virtual_size);
+ }
if (HAS_ALL_BITS(items->flags, IMAP_STATUS_ITEM_X_SIZE)) {
str_printfa(str, "X-SIZE %"PRIu64" ",
result->metadata.virtual_size);
IMAP_STATUS_ITEM_UIDVALIDITY = BIT(3),
IMAP_STATUS_ITEM_UNSEEN = BIT(4),
IMAP_STATUS_ITEM_HIGHESTMODSEQ = BIT(5),
+ IMAP_STATUS_ITEM_SIZE = BIT(6),
- IMAP_STATUS_ITEM_X_SIZE = BIT(16),
+ IMAP_STATUS_ITEM_X_SIZE = BIT(16), /* to be deprecated */
IMAP_STATUS_ITEM_X_GUID = BIT(17),
};