int imap_metadata_get(struct imap_metadata_transaction *imtrans, const char *entry, struct mail_attribute_value *value_r) { enum mail_attribute_type type; const char *key; i_zero(value_r); if (!imap_metadata_entry2key(imtrans, entry, &type, &key)) return 0; return mailbox_attribute_get(imtrans->box, type, key, value_r); }
int imap_metadata_get(struct imap_metadata_transaction *imtrans, const char *entry, struct mail_attribute_value *value_r) { enum mail_attribute_type type; const char *key; memset(value_r, 0, sizeof(*value_r)); if (!imap_metadata_entry2key(imtrans, entry, &type, &key)) return 0; if (imap_metadata_get_mailbox_transaction(imtrans) < 0) return -1; return mailbox_attribute_get(imtrans->trans, type, key, value_r); }