#ifndef __MAILSYNC_OPTIONS__
using namespace std;
// hierarchy delimiter for IMAP
#define DEFAULT_DELIMITER '/'
typedef enum { HEADER_MSGID, MD5_MSGID } msgid_t;
//////////////////////////////////////////////////////////////////////////
// Options, commandline parsing and default settings
//////////////////////////////////////////////////////////////////////////
typedef struct options_t {
bool log_chatter;
bool log_warn; // Show c-client warnings and warnings about
bool log_parse; // Log RFC822 parse errors
bool show_summary; // 1 line of output per mailbox
bool show_from; // 1 line of output per message
bool show_message_id; // Implies show_from
bool delete_messages;
bool delete_empty_mailboxes;
bool debug;
bool debug_imap;
bool debug_config;
bool report_braindammaged_msgids;
bool copy_deleted_messages;
bool simulate;
msgid_t msgid_type;
// the following options are mandatory
bool expunge_duplicates; // Should duplicates be deleted?
bool log_error; // Log serious errors
options_t(): log_chatter(0),
log_warn(0),
log_parse(0),
show_summary(1),
show_from(0),
show_message_id(0),
delete_messages(1),
delete_empty_mailboxes(0),
debug(0),
debug_imap(0),
debug_config(0),
report_braindammaged_msgids(0),
copy_deleted_messages(0),
simulate(0),
msgid_type(HEADER_MSGID),
expunge_duplicates(1),
log_error(1) {};
};
#define __MAILSYNC_OPTIONS__
#endif