Updated copyright notices to include the year 2018.
lib-storage: Add reason to mailbox_transaction_begin() Remove mailbox_transaction_set_reason().
doveadm: Call mailbox_set_reason with initialized mailbox
global: Add mailbox_set_reason() calls Added to the most important places.
global: Log internal storage error on failure
global: Replace mail_storage_service_user_free() with _unref()
Updated copyright notices to include the year 2017.
global: Replaced all instances of memset(p, 0, sizeof(*p)) with the new i_zero() macro. Used the following script: C_FILES=`git ls-files *.c` H_FILES=`git ls-files *.h` for F in "$C_FILES $H_FILES"; do echo "$F" perl -p -i -e 's/safe_memset\(&\(?([^,]*)\)?,\s*0,\s*sizeof\(\g1\)\)/i_zero_safe(&$1)/g' $F perl -p -i -e 's/safe_memset\(([^,]*),\s*0,\s*sizeof\(\*\g1\)\)/i_zero_safe($1)/g' $F perl -p -i -e 's/memset\(&\(?([^,]*)\)?,\s*0,\s*sizeof\(\g1\)\)/i_zero(&$1)/g' $F perl -p -i -e 's/memset\(([^,]*),\s*0,\s*sizeof\(\*\g1\)\)/i_zero($1)/g' $F done
doveadm-import: Open source boxes read-only This allows importing emails from read-only locations, such as backups.
doveadm: Add open read-only parameter to mailbox iterator This allows iterating mailboxes so that they are opened for read-only.
doveadm-import: Add -U parameter to specify source user When doing import, you can specify which user to use as source user.
doveadm-import: Use target user as source user This is done to avoid spurious error messages caused by being ran as root.
doveadm-import: Use ver2 structures
global: freshen copyright git ls-files | xargs perl -p -i -e 's/(\d+)-201[0-5]/$1-2016/g;s/ (201[0-5]) Dovecot/ $1-2016 Dovecot/'
doveadm copy/move/import: Delay initializing source user until run() This fixes using them with doveadm proxying.
global: freshen copyright Robomatically: git ls-files | xargs perl -p -i -e 's/(\d+)-201[0-4]/$1-2015/g;s/ (201[0-4]) Dovecot/ $1-2015 Dovecot/' Happy 2015 everyone! Signed-off-by: Phil Carmody <phil@dovecot.fi>
Updated copyright notices to include year 2014.
doveadm import: Fixed translating different source and dest hierarchy separators in mailbox names.
doveadm_mail_iter_init(): Removed unnecessarily returning transaction. If it's needed in future just add a new doveadm_mail_iter_get_transaction().
doveadm: Don't use MAILBOX_LIST_ITER_RAW_LIST when listing mailboxes. That skips ACLs and mailbox list. There's really no good reason to use that by default.
Oops :) Update copyrights to 2013 without breaking all .c files.
Updated copyright notices to include year 2013.
If prefix="" namespace isn't defined, autocreate it as an unusable namespace. This avoids having to handle mail_namespace_find() errors all over the place. Instead now the mailbox accesses will simply fail.
Renamed struct mailbox_info.name to vname.
doveadm import: Copy also message flags.
doveadm: Improved error handling. Failures should now always have non-zero exit code. doveadm now uses sysexits.h exit codes in most places, although there are still a lot of places where it simply returns EX_TEMPFAIL even though something else might be better.
Updated copyright notices to include year 2012.
doveadm import: Added -s parameter to subscribe to created mailboxes.
lib-storage: Replaced MAILBOX_FLAG_KEEP_RECENT flag with reverse MAILBOX_FLAG_DROP_RECENT. Very few places actually want to drop recent flags, so this way is easier.
doveadm import: Initialize the import user properly.
lib-storage: Changed mailbox_search_*() API to return pointer struct mail. This reduces the flexibility, because now different mailbox_search_next() calls can't have different mail parameters with possibly different wanted_fields settings. This flexibility was never used though, and removing it gives a couple of benefits: * it's now easier for backends to implement prefetch and parallel search * usage is easier since mail_alloc()/mail_free() is no longer needed
lib-storage: Renamed MAILBOX_LIST_ITER_NO_AUTO_INBOX to _NO_AUTO_BOXES.
Updated copyright notices to include year 2011.
doveadm import: Fixed potential memory corruption.
doveadm import: Settings weren't correctly used for the import storage. For example plugins weren't loaded, causing problems with zlib compressed messages.
lib-storage: mailbox_alloc() now takes a virtual mailbox name and other related API changes. All storage_name <-> vname conversions now go through the same two mailbox_list methods. This has many benefits, such as: * listescape plugin is now much simpler and bugfree * allows changing lib-storage API to use UTF-8 mailbox names in future * allows creation of "mailbox aliases" plugin
lib-storage: Added mailbox_get_last_*error() wrappers and use them.
doveadm import: Free memory used by source storage at deinit.
doveadm import: Code correctness fix (wasn't visible to users)
doveadm: Added import command for importing mails from other storages.