ceb8c97c6c9fe0ee7eb544645c6bdb74dfcb519d |
|
31-Jan-2018 |
Josef 'Jeff' Sipek <jeff.sipek@dovecot.fi> |
global: start relying on mailbox_header_lookup_unref(NULL) being a no-op
Cleanup performed with the following semantic patch:
@@
expression E;
@@
- if (E != NULL) {
- mailbox_header_lookup_unref(&E);
- }
+ mailbox_header_lookup_unref(&E); |
bcb4e51a409d94ae670de96afb8483a4f7855294 |
|
01-Jan-2018 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2018. |
489af46c6c1ee32fe6a6ff96a8281f2ef5870c8d |
|
17-Nov-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
virtual: Wrap mail.get_binary_stream() to fix it
Fixes using FETCH BINARY[..] with virtual mailboxes crashing with:
Panic: file index-mail-binary.c: line 585 (index_mail_get_binary_stream): assertion failed: (mail->data.stream != NULL) |
a08e96bb7821294656492a57482d838571d10c00 |
|
07-Jul-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
virtual: Append virtual mailbox information to get stream reason |
8eba883232f80178b60fa416f73292bf5f990fec |
|
14-Feb-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
virtual: Fix saving to a virtual mailbox to work again
Previous changes broke it. |
2454dfa32c93c20a8522c6ed42fe057baaac9f9a |
|
01-Jan-2017 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2017. |
efe78d3ba24fc866af1c79b9223dc0809ba26cad |
|
24-Dec-2016 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
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 |
21aaa6affb9f134112b75b5db737309fc35ef1cf |
|
27-Oct-2016 |
Martti Rannanjärvi <martti.rannanjarvi@dovecot.fi> |
lib-storage: rename get_real_mail to get_backend_mail
Also change the function signature so that it returns an int to indicate
success or failure. |
abb404575a238f27ea03b6049880f30f1656ddc4 |
|
13-Sep-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
Added asserts to make static analyzer happier. |
0206dc57f2c04da69599dea5816235cfeb2b897a |
|
13-Aug-2016 |
Martti Rannanjärvi <martti.rannanjarvi@dovecot.fi> |
lib-storage: remove set_cache_corrupted_reason from mail_vfuncs
Change set_cache_corrupted signature to what set_cache_corrupted_reason
used to be. |
0dffa25d211be541ee3c953b23566a1a990789df |
|
06-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: unsigned int:1 -> bool:1
perl -i -pe 's/unsigned int ([^,:;]+):1;/bool $1:1;/' **/*.[ch] |
e3367d7b54864d2e4b1931903e3f660ae64fbe3a |
|
08-Apr-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
virtual plugin: struct mail_vfuncs.close() wasn't implemented.
This wasn't a problem normally, because the core code wouldn't try to call
this. It became a problem only after other plugins were trying to call it. |
6de6ec228a41275ddda972d4a554699ea75cd06d |
|
28-Feb-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: Added mail_set_cache_corrupted_reason() |
02c335c23bf5fa225a467c19f2c063fb0dc7b8c3 |
|
12-Jan-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
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/' |
d85a1a9d9af4a36ded4d30cb277905c807de2ec5 |
|
20-Jan-2015 |
Timo Sirainen <tss@iki.fi> |
virtual plugin: Read virtual index header when opening virtual mailbox.
This allows doing some mailbox accessing without actually syncing the
mailbox. For example MAIL_FETCH_MAILBOX_NAME can be used without crashing. |
7cb128dc4cae2a03a742f63ba7afee23c78e3af0 |
|
05-Jan-2015 |
Phil Carmody <phil@dovecot.fi> |
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> |
d979c1179d55ad86e40f869e48ef3e4db9c817b5 |
|
06-Jul-2014 |
Timo Sirainen <tss@iki.fi> |
virtual: Fixed assert-crashes where trying to open an already opened backend mailbox. |
212e9e43a7d49242446331fd43ba519eda936d60 |
|
03-Jul-2014 |
Timo Sirainen <tss@iki.fi> |
virtual: Never keep more than specified number of physical mailboxes open.
This should make virtual mailboxes work for users who have a a ton of
mailboxes with a ton of mails. Earlier code would likely have failed either
with "Too many open files" or crashed with "Out of memory".
You can change the max number of open mailboxes with:
plugin {
virtual_max_open_mailboxes = 64
}
The default is 64. |
ceac44e7560fcbf6fc2f932c7b624a5055dc3bc9 |
|
30-Apr-2014 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Partially reverted the mail.get_real_mail() API change for backwards compatibility.
I hadn't realized Pigeonhole was also using it. (I thought it was using only
the mail_get_real_mail() public API.) This fixes Pigeonhole v0.4.2 to work
again. |
18a41cbd38f83429b790414c1159c097af4a59b8 |
|
15-Apr-2014 |
Timo Sirainen <tss@iki.fi> |
virtual: Delay opening the backend mailboxes until it's really necessary.
This should improve the performance a lot with mailbox_list_index=yes when
opening virtual mailboxes whose backend mailboxes are mostly unchanged. |
541b251a99a55cb0fa2eaf02645a7c39ad997092 |
|
15-Apr-2014 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Replaced mail_get_real_mail() with mail_get_backend_mail() that can fail.
For now the mail_get_real_mail() can still be used for backwards
compatibility. |
a8c5a86d183db25a57bf193c06b41e092ec2e151 |
|
04-Feb-2014 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2014. |
03010dbaa74ec70f062994dfe3cd39bedc99a28b |
|
16-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
mdbox, mbox, virtual: Avoid getting expunged-status in index lookups when not necessary.
This especially improves dsync performance with mdbox. |
5a580c3a38ced62d4bcc95b8ac7c4f2935b5d294 |
|
02-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
Oops :) Update copyrights to 2013 without breaking all .c files. |
cca4ba2a504d70a9fe9fee37f8433997359de52c |
|
02-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2013. |
13e130c3af3032982de6b1d13c6dcddda9164848 |
|
04-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Bypass virtual storage when copying mail to allow optimizations.
As a side effect this also causes all plugins to see the backend mail
instead of the virtual mail. This probably isn't bad in most situations, but
for those where it's unwanted mail_private.vmail can be used to access the
virtual mail. mail_log plugin does this to log the original virtual mailbox
name for copy operations. |
f46885a5b78b15a8d2419f6e5d13b643bd85e41f |
|
04-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added support for "private modseqs" for INDEXPVT index.
Used by dsync (next commit). |
45d47bc4660fe4bbb07817c9580deef9cca63646 |
|
03-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
virtual storage: get_first_header() always returned "doesn't exist", breaking SORT/THREAD. |
5f44975ec6c5755dd74bcd4c47a123a7242ecab3 |
|
15-Sep-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Moved index_mail.data_pool to mail_private.data_pool |
4ee00532a265bdfb38539d811fcd12d51210ac35 |
|
19-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
Array API changed: ARRAY_DEFINE(name, type) -> ARRAY(type) name
Easy way to update your existing code:
perl -i -pe 's:ARRAY_DEFINE\(([^,]+), *([^)]+)\);:ARRAY($2) $1;:' **/*.[ch] |
306b3f41b05da642d87e7ca7a1496efce9f5902f |
|
11-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
IMAP BINARY extension supports now FETCH BINARY command. |
e34d170f8f0e084bd94bfbc1a7085ece67e508df |
|
25-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Make sure we check all the functions' return values. Minor API changes to simplify this.
Checked using a patched clang that adds attribute(warn_unused_result) to all
functions. This commit fixes several error handling mistakes. |
a249dd267f05d349f1b4aa27b40a56083c8ba392 |
|
22-Mar-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Don't access mail->box->view, but mail->transaction->view.
They may not be the same. In such cases e.g. mail_set_uid() may have
accessed a wrong mail. |
5f5870385cff47efd2f58e7892f251cf13761528 |
|
12-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2012. |
ecd69c4e8371853667e01b0c16d436ef7f7393e2 |
|
12-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added mail_log_update_wanted_fields() |
6df0ab0c1ab91f06b6418cb30eff44405a1b8f02 |
|
04-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added mail_get_hdr_stream() and use it where possible.
This makes it clearer for backends when it needs a message body instead of
only message header. |
421d30619384e72a27e2a5d13ff6525aff4d17fe |
|
31-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
Redesigned mail precaching APIs.
There's no longer a one monolithic mailbox_sync(MAILBOX_SYNC_FLAG_PRECACHE)
call, but rather one mail_precache() call for each mail to be precached.
This allows the callers to show the progress and in general is cleaner. |
7631f16156aca373004953fe6b01a7f343fb47e0 |
|
28-Jul-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: mail->saving was set too late, which could have caused crashes. |
c7e14824e4e1ca9dc5d48d1eddc4a38d3041218f |
|
05-May-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added mail_parse(). |
e15b305e90c9834734ccf35ed78f0ad29d570ee9 |
|
31-Mar-2011 |
Timo Sirainen <tss@iki.fi> |
Search supports now prefetching data for returned mails. Dropped imapc's own prefetching.
mail_prefetch_count specifies how many mails can be kept open and issue a
prefetch.
This works using posix_fadvise(POSIX_FADV_WILLNEED) for maildir, sdbox and
cydir backends. Apparently only Linux supports this.
imapc backend also implements this internally by sending wanted IMAP
commands to remote server. The command pipelining helps with latency. This
change also makes it actually possible for imapc backend to first check if
wanted data is already cached in local index and avoid sending unnecessary
IMAP commands to remote server. |
2e37d45867d081db150ab78dad303b9077aea24f |
|
04-Mar-2011 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2011. |
183bea41fa640dc8117f3eb45ff935cd81377a84 |
|
04-Mar-2011 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2011. |
a4f09749814b93e8ad3ec8a0dc18885b874d6f8c |
|
06-Dec-2010 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Unvirtualized mailbox_header_lookup_*() |
c04f9a724a7b3cc649485a61b0a540868d25d71b |
|
05-Dec-2010 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Removed struct index_transaction_context.
All of its contents are now in struct mailbox_transaction_context. |
6564208826b0f46a00f010d1b5711d85944c3c88 |
|
20-Oct-2010 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added istream_opened() method to struct mail.
This can be hooked into by plugins that want to do something with the
message's stream in the message file, rather than the virtual resulting
stream visible to client. For example when using dbox attachments, this stream
contains only the data in the dbox files without any external attachments. |
de9d79337eca11a7f9c1cd476c74dfe4f09a4bd7 |
|
30-Jun-2010 |
Timo Sirainen <tss@iki.fi> |
Removed mail_update_uid() / mail_index_update_uid().
It was working properly only with mdbox and there wasn't really a need for it.
--HG--
branch : HEAD |
61e27995aadbc2f97927d3635f98d1d4ac4751e0 |
|
13-May-2010 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Removed struct mail.get_index_mail(). get_real_mail() is basically the same.
--HG--
branch : HEAD |
9af6cc9ebc9986c1275ebdfa29c39e152af1557e |
|
12-May-2010 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added mail_get_real_mail() that returns physical mail in a virtual mailbox.
--HG--
branch : HEAD |
c0225f7f6b43d34dc58c17d3304f0fd60ab89894 |
|
27-Mar-2010 |
Timo Sirainen <tss@iki.fi> |
lib-storage: mail_get_parts() no longer returns const pointer.
The struct message_part contained context-pointer and other APIs were using
it, so the pointer really couldn't be const without casting it away
sometimes.
--HG--
branch : HEAD |
d22301419109ed4a38351715e6760011421dadec |
|
07-Feb-2010 |
Timo Sirainen <tss@iki.fi> |
lib-storage: *_mailboxes don't descend from index_mailbox anymore, it's now a context.
--HG--
branch : HEAD |
ca98d6a1bbe73499da758a36bfab2963375c8d06 |
|
07-Feb-2010 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Moved struct mail_index_* from index_mailbox to mailbox.
We're relying more and more of all mailboxes being used via lib-index, and
this change makes accessing the indexes easier.
--HG--
branch : HEAD |
e59faf65ce864fe95dc00f5d52b8323cdbd0608a |
|
25-Jan-2010 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2010.
--HG--
branch : HEAD |
4542c94adb8910e0174c784754e737cec16af59c |
|
19-Jan-2010 |
Timo Sirainen <tss@iki.fi> |
virtual: wanted_headers needs to be kept referenced.
--HG--
branch : HEAD |
7a2d45cb01f8aba088c49d6826de21eb3426d726 |
|
19-Jan-2010 |
Timo Sirainen <tss@iki.fi> |
virtual MAILBOX_FETCH_MAILBOX_NAME: Return mail's physical mailbox name.
When using a virtual mailbox of other virtual mailboxes, this changes the
behavior from returning a virtual mailbox's name to returning the underlying
physical mailbox's name.
--HG--
branch : HEAD |
aabddedb5695593234bcdd5be638bf2489a9eaad |
|
19-Jan-2010 |
Timo Sirainen <tss@iki.fi> |
virtual: mail_set_uid() crashed.
--HG--
branch : HEAD |
225e82df5dd1e765f4e52b80c954558f00e5a7df |
|
01-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
Added pop3_save_uidl setting.
When UIDLs are sent to client, save them to dovecot-uidlist. This allows
changing pop3_uidl_format without messages getting re-downloaded. It's also
useful with virtual POP3 INBOX when UIDLs are based on IMAP UIDs that may
not be as stable as in non-virtual INBOX.
--HG--
branch : HEAD |
ad48319996942463675b53877092ab7e13a7a75a |
|
29-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
Added ability to specify message's minimum modseq value.
--HG--
branch : HEAD |
bddd52cb7f3e5a894c080f60750aa76b5aeaf103 |
|
28-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
Added ability to change existing messages' UIDs with mail_[index_]update_uid().
--HG--
branch : HEAD |
2615df45a8027948a474abe5e817b34b0499c171 |
|
03-Jun-2009 |
Timo Sirainen <tss@iki.fi> |
Initial commit for making mail_storage:mailbox_list to be from 1:1 to n:n.
This will allow namespaces to share the same storage and a single namespace
to have multiple storages (multiple mailbox formats). Neither works
currently, and this commit probably breaks some things.
--HG--
branch : HEAD |
a34bd633ab201f6a5ad1c00174fb8b0359031d00 |
|
26-May-2009 |
Timo Sirainen <tss@iki.fi> |
virtual: Don't assert-crash if trying to access an expunged mail.
--HG--
branch : HEAD |
e0008449defa36979c04ada0138297945ff2b613 |
|
16-Apr-2009 |
Timo Sirainen <tss@iki.fi> |
virtual: Return original mailbox names with namespace prefix.
--HG--
branch : HEAD |
fe5cca45e94608d1c471990216941bf893bc8ada |
|
04-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
virtual: Fixed to work again after set_uid_cache_updates() addition.
--HG--
branch : HEAD |
c115c742f730e312d6b6ab5064595cd0d8b4e26e |
|
27-Feb-2009 |
Timo Sirainen <tss@iki.fi> |
virtual: Added support for saving/copying messages to virtual mailboxes.
--HG--
branch : HEAD |
45312f52ff3a3d4c137447be4c7556500c2f8bf2 |
|
06-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2009.
--HG--
branch : HEAD |
3fe9483b2b412a14493e3120751b0e99ecfe9388 |
|
14-Dec-2008 |
Timo Sirainen <tss@iki.fi> |
mail_get_flags/keywords() now returns updated values if they've been changed within transaction.
--HG--
branch : HEAD |
9f755a35f7db42df6d449e30a543d9ab51734585 |
|
13-Dec-2008 |
Timo Sirainen <tss@iki.fi> |
Check mail_set_uid() return value properly.
--HG--
branch : HEAD |
acb4f357ea50918c6ced8cfb8fcac4e1a4942198 |
|
26-Oct-2008 |
Timo Sirainen <tss@iki.fi> |
Minor code cleanup.
--HG--
branch : HEAD |
d060c7e58977a44fab0c3be3e7a10772bf73e8b2 |
|
26-Oct-2008 |
Timo Sirainen <tss@iki.fi> |
Virtual mailboxes: One more mailbox_header_lookup_ctx fix.
--HG--
branch : HEAD |
942302b0247403645394d848b3c620ead262a2a5 |
|
25-Oct-2008 |
Timo Sirainen <tss@iki.fi> |
Virtual mailboxes: Fixes to handling errors.
--HG--
branch : HEAD |
c8d1ccf9dec39e9e145d55b472eee43d95764189 |
|
25-Oct-2008 |
Timo Sirainen <tss@iki.fi> |
Virtual mailboxes: Don't use virtual mailbox_header_lookup_ctx in backend calls.
--HG--
branch : HEAD |
06ff2a72c39cb34cc6425f17fc82c5e93fef2018 |
|
20-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
FETCH X-MAILBOX and SEARCH X-MAILBOX can be used with virtual mailboxes to
find out the original mailbox. In non-virtual mailboxes they always just
use the current mailbox name.
--HG--
branch : HEAD |
dee43975a70bcdb9dc83d34d6a2b177d37bb7194 |
|
09-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
virtual mailboxes: Use saved search results to find out which messages were
added/removed. Also several other fixes and optimizations.
--HG--
branch : HEAD |
24e5e4526d8f5cbc056ab97fd0d154d0936d7a5e |
|
13-Mar-2008 |
Timo Sirainen <tss@iki.fi> |
Added initial support for virtual mailboxes.
--HG--
branch : HEAD |