24#ifndef MUTT_CORE_MXAPI_H
25#define MUTT_CORE_MXAPI_H
40#define MUTT_OPEN_NO_FLAGS 0
41#define MUTT_NOSORT (1 << 0)
42#define MUTT_APPEND (1 << 1)
43#define MUTT_READONLY (1 << 2)
44#define MUTT_QUIET (1 << 3)
45#define MUTT_NEWFOLDER (1 << 4)
48#define MUTT_PEEK (1 << 5)
49#define MUTT_APPENDNEW (1 << 6)
53#define MUTT_MAILBOX_CHECK_NO_FLAGS 0
54#define MUTT_MAILBOX_CHECK_POSTPONED (1 << 0)
55#define MUTT_MAILBOX_CHECK_STATS (1 << 1)
56#define MUTT_MAILBOX_CHECK_IMMEDIATE (1 << 2)
MailboxType
Supported mailbox formats.
uint8_t OpenMailboxFlags
Flags for mutt_open_mailbox(), e.g. MUTT_NOSORT.
MxOpenReturns
Return values for mbox_open()
@ MX_OPEN_ERROR
Open failed with an error.
@ MX_OPEN_ABORT
Open was aborted.
@ MX_OPEN_OK
Open succeeded.
uint8_t CheckStatsFlags
Flags for mutt_mailbox_check.
MxStatus
Return values from mbox_check(), mbox_check_stats(), mbox_sync(), and mbox_close()
@ MX_STATUS_LOCKED
Couldn't lock the Mailbox.
@ MX_STATUS_ERROR
An error occurred.
@ MX_STATUS_OK
No changes.
@ MX_STATUS_FLAGS
Nondestructive flags change (IMAP)
@ MX_STATUS_REOPENED
Mailbox was reopened.
@ MX_STATUS_NEW_MAIL
New mail received in Mailbox.
A group of associated Mailboxes.
String manipulation buffer.
The envelope/body of an email.
A local copy of an email.
int(* path_is_empty)(struct Buffer *path)
bool is_local
True, if Mailbox type has local files/dirs.
bool(* msg_open)(struct Mailbox *m, struct Message *msg, struct Email *e)
int(* tags_commit)(struct Mailbox *m, struct Email *e, const char *buf)
int(* msg_save_hcache)(struct Mailbox *m, struct Email *e)
enum MailboxType(* path_probe)(const char *path, const struct stat *st)
enum MailboxType type
Mailbox type, e.g. MUTT_IMAP.
int(* msg_padding_size)(struct Mailbox *m)
bool(* ac_owns_path)(struct Account *a, const char *path)
int(* tags_edit)(struct Mailbox *m, const char *tags, struct Buffer *buf)
int(* msg_commit)(struct Mailbox *m, struct Message *msg)
enum MxStatus(* mbox_check_stats)(struct Mailbox *m, CheckStatsFlags flags)
bool(* ac_add)(struct Account *a, struct Mailbox *m)
enum MxOpenReturns(* mbox_open)(struct Mailbox *m)
int(* msg_close)(struct Mailbox *m, struct Message *msg)
bool(* msg_open_new)(struct Mailbox *m, struct Message *msg, const struct Email *e)
const char * name
Mailbox name, e.g. "imap".
int(* path_canon)(struct Buffer *path)
enum MxStatus(* mbox_close)(struct Mailbox *m)
enum MxStatus(* mbox_sync)(struct Mailbox *m)
bool(* mbox_open_append)(struct Mailbox *m, OpenMailboxFlags flags)
enum MxStatus(* mbox_check)(struct Mailbox *m)