1 #ifndef IMAP_SETTINGS_H 2 #define IMAP_SETTINGS_H 3 4 #include "net.h" 5 6 struct mail_user_settings; 7 8 /* <settings checks> */ 9 enum imap_client_workarounds { 10 WORKAROUND_DELAY_NEWMAIL = 0x01, 11 WORKAROUND_TB_EXTRA_MAILBOX_SEP = 0x08, 12 WORKAROUND_TB_LSUB_FLAGS = 0x10 13 }; 14 15 enum imap_client_fetch_failure { 16 IMAP_CLIENT_FETCH_FAILURE_DISCONNECT_IMMEDIATELY, 17 IMAP_CLIENT_FETCH_FAILURE_DISCONNECT_AFTER, 18 IMAP_CLIENT_FETCH_FAILURE_NO_AFTER, 19 }; 20 /* </settings checks> */ 21 22 struct imap_settings { 23 bool verbose_proctitle; 24 const char *rawlog_dir; 25 26 /* imap: */ 27 uoff_t imap_max_line_length; 28 unsigned int imap_idle_notify_interval; 29 const char *imap_capability; 30 const char *imap_client_workarounds; 31 const char *imap_logout_format; 32 const char *imap_id_send; 33 const char *imap_id_log; 34 const char *imap_fetch_failure; 35 bool imap_metadata; 36 bool imap_literal_minus; 37 unsigned int imap_hibernate_timeout; 38 39 /* imap urlauth: */ 40 const char *imap_urlauth_host; 41 in_port_t imap_urlauth_port; 42 43 enum imap_client_workarounds parsed_workarounds; 44 enum imap_client_fetch_failure parsed_fetch_failure; 45 }; 46 47 extern const struct setting_parser_info imap_setting_parser_info; 48 49 #endif 50