Mercurial > dovecot > original-hg > dovecot-1.2
changeset 4153:690c72358cd5 HEAD
Added pop3_lock_session setting.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sun, 09 Apr 2006 18:50:53 +0300 |
parents | e2edd333c473 |
children | 7a4c7a12da9e |
files | dovecot-example.conf src/master/master-settings.c src/master/master-settings.h src/pop3/client.c src/pop3/common.h src/pop3/main.c |
diffstat | 6 files changed, 15 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/dovecot-example.conf Sun Apr 09 18:50:22 2006 +0300 +++ b/dovecot-example.conf Sun Apr 09 18:50:53 2006 +0300 @@ -507,7 +507,13 @@ # from new ones. Some clients still wish to use this though. Enabling this # makes RSET command clear all \Seen flags from messages. #pop3_enable_last = no - + + # If mail has X-UIDL header, use it as the mail's UIDL. + #pop3_reuse_xuidl = no + + # Keep the mailbox locked for the entire POP3 session. + #pop3_lock_session = no + # POP3 UIDL format to use. You can use following variables: # # %v - Mailbox UIDVALIDITY
--- a/src/master/master-settings.c Sun Apr 09 18:50:22 2006 +0300 +++ b/src/master/master-settings.c Sun Apr 09 18:50:53 2006 +0300 @@ -145,6 +145,7 @@ DEF(SET_BOOL, pop3_no_flag_updates), DEF(SET_BOOL, pop3_enable_last), DEF(SET_BOOL, pop3_reuse_xuidl), + DEF(SET_BOOL, pop3_lock_session), DEF(SET_STR, pop3_uidl_format), DEF(SET_STR, pop3_client_workarounds), DEF(SET_STR, pop3_logout_format), @@ -351,6 +352,7 @@ MEMBER(pop3_no_flag_updates) FALSE, MEMBER(pop3_enable_last) FALSE, MEMBER(pop3_reuse_xuidl) FALSE, + MEMBER(pop3_lock_session) FALSE, MEMBER(pop3_uidl_format) NULL, MEMBER(pop3_client_workarounds) NULL, MEMBER(pop3_logout_format) "top=%t/%p, retr=%r/%b, del=%d/%m, size=%s",
--- a/src/master/master-settings.h Sun Apr 09 18:50:22 2006 +0300 +++ b/src/master/master-settings.h Sun Apr 09 18:50:53 2006 +0300 @@ -108,6 +108,7 @@ bool pop3_no_flag_updates; bool pop3_enable_last; bool pop3_reuse_xuidl; + bool pop3_lock_session; const char *pop3_uidl_format; const char *pop3_client_workarounds; const char *pop3_logout_format;
--- a/src/pop3/client.c Sun Apr 09 18:50:22 2006 +0300 +++ b/src/pop3/client.c Sun Apr 09 18:50:53 2006 +0300 @@ -152,6 +152,8 @@ flags = 0; if (no_flag_updates) flags |= MAILBOX_OPEN_KEEP_RECENT; + if (lock_session) + flags |= MAILBOX_OPEN_KEEP_LOCKED; client->mailbox = mailbox_open(storage, "INBOX", NULL, flags); if (client->mailbox == NULL) { i_error("Couldn't open INBOX: %s",
--- a/src/pop3/common.h Sun Apr 09 18:50:22 2006 +0300 +++ b/src/pop3/common.h Sun Apr 09 18:50:53 2006 +0300 @@ -18,7 +18,7 @@ extern struct ioloop *ioloop; extern enum client_workarounds client_workarounds; -extern bool enable_last_command, no_flag_updates, reuse_xuidl; +extern bool enable_last_command, no_flag_updates, reuse_xuidl, lock_session; extern const char *uidl_format, *logout_format; extern enum uidl_keys uidl_keymask;
--- a/src/pop3/main.c Sun Apr 09 18:50:22 2006 +0300 +++ b/src/pop3/main.c Sun Apr 09 18:50:53 2006 +0300 @@ -45,6 +45,7 @@ bool enable_last_command = FALSE; bool no_flag_updates = FALSE; bool reuse_xuidl = FALSE; +bool lock_session = FALSE; const char *uidl_format, *logout_format; enum uidl_keys uidl_keymask; @@ -207,6 +208,7 @@ enable_last_command = getenv("POP3_ENABLE_LAST") != NULL; no_flag_updates = getenv("POP3_NO_FLAG_UPDATES") != NULL; reuse_xuidl = getenv("POP3_REUSE_XUIDL") != NULL; + lock_session = getenv("POP3_LOCK_SESSION") != NULL; uidl_format = getenv("POP3_UIDL_FORMAT"); if (uidl_format == NULL || *uidl_format == '\0')