bcb4e51a409d94ae670de96afb8483a4f7855294 |
|
01-Jan-2018 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2018. |
d4002fe1f64d25a792f76fb102ef7dc519cd4e24 |
|
11-Dec-2017 |
Martti Rannanjärvi <martti.rannanjarvi@dovecot.fi> |
global: Use mail_set_critical() and mailbox_set_critical() if possible
Replace calls to mail_storage_set_critical() with mail_set_critical()
or mailbox_set_critical() in places where mailbox or mail are easily
available. |
e12a822e72e86d1b28196790323220dcb1c42430 |
|
17-Jul-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: If mail_index_header.first_recent_uid shrinks, reset \Recent flags
This should never happen. |
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 |
2d33fd7fc78aae43175330c66636332de615c69f |
|
04-Oct-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: Make sure mailbox_sync*() fails if view is inconsistent afterwards. |
436adac819e7cbeef04af08dcc6a4f3ecd4a1d9e |
|
13-Aug-2016 |
Martti Rannanjärvi <martti.rannanjarvi@dovecot.fi> |
lib-storage: remove mailbox-recent-flags.h from index-storage.h |
aa47c9bd1d1fc70cd699c49fd1ca92dbc7615953 |
|
21-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: Added quick parameter to list_index_has_changed() |
d9a7e950a9cd21f2b4a90ec7759fca9e8fcc7995 |
|
05-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Fixed mismatched bool vs. int/pointer handling
I don't think these fix any actual bugs. |
d2c9e28ba48898e56f3ccd763d3aa947fcc2eb98 |
|
03-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: Fixed potential crash in mailbox_sync_deinit() error handling
If mailbox_sync*() was called before mailbox was opened, the automatic
mailbox opening could fail. mailbox_sync_deinit() would still try to access
box->view, which would be NULL. |
0b1f4c104714567a42a53040eae8c99e7c7ed9dc |
|
28-Apr-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: Added index_storage_list_index_has_changed_full()
This allows the caller to use it to implement a slightly different
mailbox.list_index_has_changed() |
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/' |
07ddf7a928d6195e58dcc8810aabde97a9dfdf08 |
|
28-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Don't try to update index vsize if syncing failed. |
9963bef626fd9ea227fb606e8b1694cdb1ab39aa |
|
21-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Update mailbox vsize header on save/copy/expunge.
This allows always efficiently looking up maiboxes' vsizes after they're
initially calculated.
The expunge handling is unfortunately done currently in quota handling code,
so it works only if quota is enabled. Ideally this would be solved in v2.3
with some lib-storage core changes. |
7e2671b295927b461adc8b6c4ed6a1c4761fb323 |
|
19-Aug-2015 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Moved index/index-mailbox-check.c code to mailbox-watch.c
This changes the API, but adds backwards compatibility macros. |
817d027593510c3ba70ad542ce0011f5f6916d1e |
|
18-Aug-2015 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Moved most of the \Recent flag handling code to mailbox-recent-flags.c
There are also some API changes, because functions were renamed and the
recent_* fields were moved to struct mailbox. I'm not aware of any plugins
using these though, except for index_mailbox_set_recent_seq() which for now
is kept as a backwards compatibility macro.
No changes were made to the actual code logic. |
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> |
f90cbe597c41d5cc91debd371f8648bd8e6ffbc2 |
|
28-Aug-2014 |
Timo Sirainen <tss@iki.fi> |
lib-index, lib-storage: Fixed race conditions with deleting mailbox.
Now only one process can successfully finish mailbox_mark_index_deleted(). |
53cc097d3f8cd789f3c8fa0dfdd02bcda776230e |
|
22-May-2014 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added mailbox_list_index_very_dirty_syncs setting.
This setting assumes that the mailbox list index is up to date and uses it
without stat()ing backend mailbox files/dirs. (As a possible future TODO it
might be useful to still do the stat()ing, but only rarely.) |
a8c5a86d183db25a57bf193c06b41e092ec2e151 |
|
04-Feb-2014 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2014. |
2f1853d15059f374a0450b52d32f7800cc40dc40 |
|
21-Aug-2013 |
Timo Sirainen <tss@iki.fi> |
lib-storage: When doing a fast sync, refresh index to see if it had any changes.
I'm pretty sure this used to be done earlier, but probably some
optimizations dropped it at some point. |
2926f11b03d5c1c43e79e6d3c4cbd076d980c536 |
|
24-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Fixed setting \Recent flags for sessions that didn't drop them.
If another session wasn't dropping the \Recent flags, no new mails were
getting them unless the mailbox was reopened. |
e2d268e9531227ead6a98466ecf3c046c857ef70 |
|
19-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Saving/copying no longer discards private message flags. |
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. |
2d05af5ce21d020aba7368746d936827033a2b8b |
|
28-Nov-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Notify about \Seen flag changes in private index.
Some earlier "don't send unnecessary flag changes" optimizations caused
this. |
6eb098154104af1d60a3e2ceef86511322657c8d |
|
26-Nov-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Don't crash when trying to sync private index, if syncing had already failed. |
f69cd5cc5117123812ec1eacf8024738098e4378 |
|
30-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
lib-lda: Avoid doing a costly mailbox sync when delivering mail to multiple recipients. |
1f1ee8db68d9ae1604350801cd8dc33ebe29fe8a |
|
29-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Renamed mail_storage_set_index_error() to mailbox_set_index_error() |
e68fc7dc8c8a75842f1e39deb49d196d1cfdb3b3 |
|
29-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
Treat modseq updates explicitly instead of as if they were flag changes. |
9fc97c8aa8190df87624d214bcc5d0b5362bec93 |
|
26-Sep-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: mailbox_get_path() and friends can now return an error.
An upcoming "index" mailbox_list backend uses mailbox GUIDs as the directory
names. Doing a name => GUID lookup may fail, so the path lookup may fail.
This is a somewhat annoying change and perhaps it can be removed in future,
but for now it looks like it can't be avoided. |
feaa6a3d82ea61496ced1f83a726ff33047c7da2 |
|
25-Sep-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added mailbox_get_path_to() wrapper for mailbox_list_get_path().
Changed the code to use as much of mailbox_get_path_to() and
mailbox_get_path() as possible. |
1ed966996ebac2b68b37a6cba1b4c0e82fc36998 |
|
13-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
mailbox_list_index=yes: Don't log an error when verifying existence of already deleted mailbox. |
d775ed07fc7054f1e99e0af92ee2afe1cbf1ffb2 |
|
12-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Update private index before updating saved search results. |
812f2e9d173d5067732e205925510accb2094a6e |
|
31-Jul-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Fixes to handling private message flag indexes. |
ee0a5025dca42d6014eb91d87b2924134d0fee29 |
|
03-Jul-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Don't try to sync private index files if syncing already failed.
This fixes a crash when opening a mailbox failed. |
461ffead9720d1e516b959d5e41f049c73d38c7c |
|
25-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
seq-range-array: Reverted most of recent API changes.
Added ATTR_NOWARN_UNUSED_RESULT for the functions whose return value can
safely be ignored. |
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. |
4fb98a31d0e4f67978a98a83a5895472b2da0401 |
|
24-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
seq_range_array_remove() now returns void. Added seq_ranger_array_try_remove(). |
86bde2c1838d1ce967fa2b394bb952004a4adcb7 |
|
24-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
seq_range_array_add() API changed. Added other functions to provide the less common use cases. |
5da1aa5197a43d83f0fb3eeb83125c7cd73d1b62 |
|
11-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
shared mailboxes: Per-user flags can now be stored in private index files.
This can be enabled by adding e.g.:
mail_location = mdbox:/var/shared/mdbox:INDEXPVT=~/mdbox/shared |
250105a1440167ef000323cdb2721cd2a3688e1e |
|
22-May-2012 |
Timo Sirainen <tss@iki.fi> |
Don't write "keyword reset" records to transaction log anymore.
These are a bit problematic for dsync's keyword merging to handle. |
5f5870385cff47efd2f58e7892f251cf13761528 |
|
12-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2012. |
93ec3b0c4b911e2cc79a99f4a300e488d2d694d3 |
|
02-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Mailbox list index's ext_id shouldn't be cached in mail_storage.
It's mailbox_list-specific, not mail_storage-specific. The easiest fix was
to just cache it into mailbox rather than create a new index_mailbox_list. |
1ea57ace3467dc68582e12349f2de7771f4dde78 |
|
15-Sep-2011 |
Timo Sirainen <tss@iki.fi> |
s/commiting/committing/
Caught by Marco Nenciarini. |
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. |
b1ba6a91bd73e1407865acd405814753dedd0121 |
|
30-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added MAILBOX_TRANSACTION_FLAG_NO_CACHE_DEC and use it when precaching.
The result is that "doveadm index" no longer changes caching decisions. |
ab9a91eb05a54f7675e0bf861aca53f417e1980d |
|
30-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added MAILBOX_TRANSACTION_FLAG_NO_CACHE_DEC and use it when precaching.
The result is that "doveadm index" no longer changes caching decisions. |
4145cbac82bfc0c8bfeceeca0ef841700117930c |
|
28-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
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. |
4b4aabb44db8d395e27265db137eab876f3de6b5 |
|
10-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Fixed getting recent count for mailbox when it wasn't synced. |
0854144137215518544887bdab97bd76c3956bfc |
|
22-Jun-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: MAILBOX_SYNC_FLAG_PRECACHE did nothing when mail_debug=yes |
64b61cd24d630223478ccbe1934b9f60f0881f59 |
|
14-Jun-2011 |
Timo Sirainen <tss@iki.fi> |
Moved the main functionality from "doveadm index" to MAILBOX_SYNC_FLAG_PRECACHE
This also allows plugins to hook into the sync and implement their own
precaching easily. fts indexing is now done this way rather than kludging. |
d998335307d31d41ba996a6b34be28aa56047bad |
|
10-Jun-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: When "Recent flags state corrupted" happens, avoid assert-crashing afterwards. |
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. |
c0d069950af1dbc6a4e5c3de3bf2e437796e3ae0 |
|
09-Feb-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Return STATUS replies from mailbox list index only when it's fully up-to-date. |
9fb018dea4e2073639249ea8a14ae27cab2c0aac |
|
16-Jan-2011 |
Timo Sirainen <tss@iki.fi> |
Added initial implementation of "imapc" storage.
It can be used to create a "smart IMAP proxy" where Dovecot uses remote IMAP
server as a mail storage.
This is a very rough early implementation. Performance isn't good, many
required features are missing, error handling is lacking and code needs
de-uglification. Still, it should be enough for selecting INBOX and
accessing mails in it. |
b5b3b4c9159f506cdfdce7399faaeeffdf73faf7 |
|
25-May-2010 |
Timo Sirainen <tss@iki.fi> |
Changed some index error handling conditions to log an error instead of assert-crash.
--HG--
branch : HEAD |
3f91e60401495a4046c73992fabaa5e77200a451 |
|
09-Feb-2010 |
Timo Sirainen <tss@iki.fi> |
Mailbox deletion: Fixed race condition where a mailbox couldn't get deleted.
--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 |
2584e86cc2d8c31ba30a4109cf4ba09d1e37e28a |
|
17-Dec-2009 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Changed mailbox_sync() and mailbox_sync_deinit() APIs.
Although we're already in beta stage, this is simple enough of a change that
it shouldn't matter much. Having syncing also return status information made
the API ugly and the status information wasn't even wanted all that often.
--HG--
branch : HEAD |
ced118ac5caf6fe83d34339c2c65c63b2aa768ac |
|
31-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
index-storage: Code cleanup.
--HG--
branch : HEAD |
e50fb31ab30b34d0a1ce2cf5b223883ff745472d |
|
17-May-2009 |
Timo Sirainen <tss@iki.fi> |
Tracking flag updates in saved search results was broken when expunging messages.
--HG--
branch : HEAD |
d881cbe0e1939dbdc9a8f6dca2ddc832f4ddb251 |
|
14-Apr-2009 |
Timo Sirainen <tss@iki.fi> |
dbox: Don't crash if index files can't be opened.
--HG--
branch : HEAD |
45312f52ff3a3d4c137447be4c7556500c2f8bf2 |
|
06-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2009.
--HG--
branch : HEAD |
d8a2c68c17838f2e14ebd574b3ea2f1ac02c6882 |
|
31-Aug-2008 |
Timo Sirainen <tss@iki.fi> |
DEBUG: Don't verify recent flags if view is already marked inconsistent.
--HG--
branch : HEAD |
ff635a8e19fa52bad48adf4e8fd2b6839b906a47 |
|
18-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
Moved non-syncing related search result updating code to a separate file and
did some other cleanups.
--HG--
branch : HEAD |
5cbab0cb665cd982855d9d87573c35706e4d992c |
|
18-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
Search result update handling code cleanups.
--HG--
branch : HEAD |
1f43c8ac132c153c224c4fffe34b2c3075d87ef7 |
|
17-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
Changed mail index view syncing API to return only flag changes.
Currently it has only a single caller and it's not interested in anything
else.
--HG--
branch : HEAD |
5a86309a6c58bdeb9921bf2989aaabaaa04a29ab |
|
17-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
mail_index_view_sync_begin() now delays its failures to _commit().
--HG--
branch : HEAD |
17da42c31202b1b3e7e308121ea17d922c24da1b |
|
11-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
QRESYNC: If MODSEQs were returned in FETCH replies but there are pending
expunges, send a low enough HIGHESTMODSEQ reply to make sure the client will
later see the expunges.
--HG--
branch : HEAD |
f2fbc8a859d3381a5c35a89958049688899314ce |
|
08-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
Minor code cleanup
--HG--
branch : HEAD |
b8d232d88018c5cafd2f3be5a181d318137a45f2 |
|
27-May-2008 |
Timo Sirainen <tss@iki.fi> |
Avoid using shadow variables. Unfortunately -Wshadow also complains about
index variable conflicting with index(), which is used in way too many
places to change.
--HG--
branch : HEAD |
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637 |
|
05-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
Implemented CONTEXT=SEARCH extension.
--HG--
branch : HEAD |
f569d62531b9140470e27f7470ea8a03e9b9d6c7 |
|
25-Apr-2008 |
Timo Sirainen <tss@iki.fi> |
Fixes to handling recent flags with UIDVALIDITY changing.
--HG--
branch : HEAD |
28b30e9bd1a0a8b9019124abd821cb2989a03910 |
|
25-Apr-2008 |
Timo Sirainen <tss@iki.fi> |
Reset cached \Recent flags if UIDVALIDITY changes, because we were using
UIDs in the cache.
--HG--
branch : HEAD |
b9c44feadade0481b957f2978640afb3317bd1df |
|
15-Mar-2008 |
Timo Sirainen <tss@iki.fi> |
View sync returns now also hidden records, but they're marked as such.
Mailbox syncing returns hidden records as modseq changes.
--HG--
branch : HEAD |
505a3dd69a519bce82a01265ad2bb1cb93391926 |
|
25-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
mailbox_notify_changes(): Don't trigger the timeout once a second to see if
the timeout really occurred.
--HG--
branch : HEAD |
5b1d58512ce6eece96f15d58b74e0a9ddb5ad474 |
|
25-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
mailbox_notify_changes(): Don't trigger the timeout once a second to see if
the timeout really occurred.
--HG--
branch : HEAD |
cc977f55ce66b63e8b37c20fce58d0ef516f0f29 |
|
25-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
Check and update sync_last_check in one common function.
--HG--
branch : HEAD |
b7ad29db8cf906da01ee4626730868881087950b |
|
25-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
Check and update sync_last_check in one common function.
--HG--
branch : HEAD |
ecebd886c4a49c8b9acd3df12ef4b1faaae3d887 |
|
20-Jan-2008 |
Timo Sirainen <tss@iki.fi> |
Don't crash if sync initialization fails.
--HG--
branch : HEAD |
389e0ad41d4dd6acf50f855ecd5f0651082c9f31 |
|
06-Jan-2008 |
Timo Sirainen <tss@iki.fi> |
When syncing a mailbox, sync the view internally first completely and just
get a list of messages that have changed. Then just have mailbox_sync_next()
return flag updates from that list. This avoids duplicate notifications and
also fixes some bugs in previous implementation.
MAILBOX_SYNC_TYPE_KEYWORDS no longer exists, keyword changes are included in
MAILBOX_SYNC_TYPE_FLAGS.
--HG--
branch : HEAD |
76b43e4417bab52e913da39b5f5bc2a130d3f149 |
|
01-Jan-2008 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2008.
--HG--
branch : HEAD |
52c6ec52ab53890c0c33d6bf85d47dfabaa38f77 |
|
08-Dec-2007 |
Timo Sirainen <tss@iki.fi> |
Code cleanup
--HG--
branch : HEAD |
ff78c4ba4e897026eb99788e0a6ac15e9205fcd7 |
|
08-Dec-2007 |
Timo Sirainen <tss@iki.fi> |
Don't assert-crash if sync was aborted and it still had expunges left.
--HG--
branch : HEAD |
3da614c39dd29f536c485089e67839b4cf89fed3 |
|
03-Nov-2007 |
Timo Sirainen <tss@iki.fi> |
Renamed mail_index_lookup_uid_range() to mail_index_lookup_seq_range(), made
it return a bool and added mail_index_lookup_seq(). Cleaned up the code to
use these functions.
--HG--
branch : HEAD |
0f8befac86e1078ba17a003a2c98f6d7a5550d45 |
|
03-Nov-2007 |
Timo Sirainen <tss@iki.fi> |
Use MAIL_INDEX_VIEW_SYNC_FLAG_FIX_INCONSISTENT instead of handling
inconsistency ourself.
--HG--
branch : HEAD |
c8c42b11cefbd5dc4dfdf2721ade2ef82fe19e9c |
|
03-Nov-2007 |
Timo Sirainen <tss@iki.fi> |
Added MAILBOX_SYNC_FLAG_FIX_INCONSISTENT flag. mailbox_sync() uses it
always. If view is invalid or view syncing causes the view to become
invalid, the view is reopened.
--HG--
branch : HEAD |
530c3ece3717ad8193046ea7774227f91971a0dc |
|
03-Nov-2007 |
Timo Sirainen <tss@iki.fi> |
Fixes to handling inconsistent views after index reset.
--HG--
branch : HEAD |
89a126810703c666309310d0f3189e9834d70b5b |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Replaced my Copyright notices. The year range always ends with 2007 now.
My name was replaced with "Dovecot authors". In many cases I didn't really
even own the copyright, so this is more correct.
--HG--
branch : HEAD |
c979eeda1f46483d9c963e265786b701d7683d77 |
|
12-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
mail_index_view_sync_next() and mailbox_sync_next() returns now bool.
Renamed void mailbox_index_view_sync_end() to int
mailbox_index_view_sync_commit().
--HG--
branch : HEAD |
88187ee880b4829443e0d55ea7d145d9d5880217 |
|
12-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Removed explicit locking from views and maps. They were already locked all
the time when they were used. Because of this change several functions can
no longer fail, so they were changed to return void, and a lot of pointless
error handling was removed.
--HG--
branch : HEAD |
73782c90126082447faa16df3b843c2eef95bdea |
|
19-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
Fixes to handling recent flags. Also if DEBUG is enabled, scan through the
recent flags array to make sure there aren't any expunged messages.
--HG--
branch : HEAD |
e89c5ca7a5b2ed7762c4e237b3ad01a96082c914 |
|
17-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
If a message was expunged that wasn't yet even visible to our view, it might
have still been in recent flags array. Make sure it gets removed from there.
--HG--
branch : HEAD |
a8b8cce8569753ed47c94782283a24fb11c5ab52 |
|
16-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
Fixes to recent handling. Now it should work properly.
--HG--
branch : HEAD |
1d3f7c1278168d5b1cbfa9a2cc9929a0909056b4 |
|
16-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
Recent flag handling rewrite. Still not perfect with maildir.
--HG--
branch : HEAD |
7761758f43d6150be4b07f4c54457ce662f78c4c |
|
17-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
mail_index_view_sync_begin() can now sync only all or all but expunges.
Changed sync_type to be flags.
--HG--
branch : HEAD |
93350cbbf1deff6fbeaf83a05ea88c8f2a1fa34d |
|
17-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
Removed MAILBOX_SYNC_FLAG_NO_NEWMAIL handling.
--HG--
branch : HEAD |
6bc98d3898c475ba7615ba2b016e5142c8b2c09f |
|
13-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
Changed mail_index_view_sync_begin() to take enum mail_index_view_sync_type.
This limits how the view can be synced, but we couldn't handle before more
than the 3 useful cases anyway.
--HG--
branch : HEAD |
fd77d637ee40ad0c9c870e28c3e080498490c4b1 |
|
30-Mar-2007 |
Timo Sirainen <tss@iki.fi> |
Allow index_mailbox.is_recent() to be NULL if it's not needed.
--HG--
branch : HEAD |
b67c4cff87186c243b92ff537098420901388116 |
|
28-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Reversed last change. Doing it another way.
--HG--
branch : HEAD |
a5cc9935581d9503b5f77097390d903b8add6c44 |
|
28-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Call mail_index_view_unlock() only when all transactions are finished.
--HG--
branch : HEAD |
5fb3bff645380804c9db2510940c41db6b8fdb01 |
|
25-Nov-2006 |
Timo Sirainen <tss@iki.fi> |
Mailbox list indexing and related changes. Currently works only with
maildir and mmap_disable=no. This allows doing STATUS to synced mailboxes
without opening their index files at all.
--HG--
branch : HEAD |
94a8cb0ee1d85569ad1a2acacd92d3ce22f8a1cb |
|
15-Oct-2006 |
Timo Sirainen <tss@iki.fi> |
Try to avoid sending duplicate/useless flag updates.
--HG--
branch : HEAD |
8d80659e504ffb34bb0c6a633184fece35751b18 |
|
28-Jun-2006 |
Timo Sirainen <tss@iki.fi> |
Array API redesigned to work using unions. It now provides type safety
without having to enable DEBUG, as long as the compiler supports typeof().
Its API changed a bit. It now allows directly accessing the array contents,
although that's not necessarily recommended. Changed existing array usage to
be type safe in a bit more places. Removed array_t completely. Also did
s/modifyable/modifiable/.
--HG--
branch : HEAD |
79fcd3f95a6266cc62ceaa753e56dd4456ab7c4b |
|
26-Feb-2006 |
Timo Sirainen <tss@iki.fi> |
Memory leak fixes
--HG--
branch : HEAD |
55c49df2be2cc1268e15cddea4c8718a96a289cb |
|
05-Feb-2006 |
Timo Sirainen <tss@iki.fi> |
Keyword comparing still didn't work perfectly when there were no keywords.
This caused some extra unnecessary keyword changes.
--HG--
branch : HEAD |
d5cebe7f98e63d4e2822863ef2faa4971e8b3a5d |
|
14-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
deinit, unref, destroy, close, free, etc. functions now take a pointer to
their data pointer, and set it to NULL. This makes double-frees less likely
to cause security holes.
--HG--
branch : HEAD |
6ef7e31619edfaa17ed044b45861d106a86191ef |
|
13-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Added "bool" type and changed all ints that were used as booleans to bool.
--HG--
branch : HEAD |
55e6e31eb3818206f9bfbccf59cbea0ccf51dd37 |
|
07-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Crashfix to last keyword compare update
--HG--
branch : HEAD |
020a39a395d2adb768e0179631b37bc78ecd9471 |
|
06-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Changed mail_index_view_sync_next() to return struct
mail_index_view_sync_rec records which only contain the type and UID range.
Makes it clearer that the caller won't get anything else, and flag updates
now don't need to update add_flags/remove_flags fields.
--HG--
branch : HEAD |
8230d9cc24289bfe614bf6550c76e5345607ce3f |
|
06-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Make it compile..
--HG--
branch : HEAD |
bb26f09873c18f342cd1ab2d0ee0b9018e6546d9 |
|
06-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
We assumed that keyword index arrays were always sorted. This isn't always
the case. Caused unneeded keyword updates.
--HG--
branch : HEAD |
9d3ccd79130199ffdb19a688027d49bf20a4aaaa |
|
08-Apr-2005 |
Timo Sirainen <tss@iki.fi> |
Several size_t -> unsigned int changes. Try to keep "unsigned int" for
counters, size_t for actual memory range sizes.
--HG--
branch : HEAD |
294f1a51763015cda0e2d874c5027d6fe7a2cd54 |
|
14-Mar-2005 |
Timo Sirainen <tss@iki.fi> |
Renamed oe6-fetch-no-newmail workaround to delay-newmail and changed it to
work more like the name says: only newmail notifications are skipped and
not only for FETCH command.
--HG--
branch : HEAD |
26ff8f8a4867bf8e9551a27a2de8c12cd138b065 |
|
14-Mar-2005 |
Timo Sirainen <tss@iki.fi> |
mail_index_sync_next() now returns keyword updates (now only thing left to
do is to fix maildir and mbox syncing to use them).
--HG--
branch : HEAD |
16c89b1260c9d07c01c83a9219424d3727069b2e |
|
26-Dec-2004 |
Timo Sirainen <tss@iki.fi> |
Initial support for keywords. Syncing to mbox/maildir doesn't work yet.
--HG--
branch : HEAD |
df4018ae2f0a95be602f724ca70df7e0e3bd6a7d |
|
29-Nov-2004 |
Timo Sirainen <tss@iki.fi> |
Removed view->messages_count, view->hdr.messages_count is enough. Also fixes
assert crash in mail_index_bsearch_uid().
Renamed .._get_message_count() to get_messages_count() to be more
consistent.
--HG--
branch : HEAD |
1d24d7a5d312a6626f0e5bfe60b6a0e10fedb698 |
|
24-Nov-2004 |
Timo Sirainen <tss@iki.fi> |
recent flag fixes
--HG--
branch : HEAD |
2dec8a2ed04c9e0ac92bcce9aa7270eb98b3d53c |
|
24-Nov-2004 |
Timo Sirainen <tss@iki.fi> |
recent flag fixes
--HG--
branch : HEAD |
3023fb352cbc2052b156f6d325c2629531a1b5b4 |
|
09-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Recent flag fixes
--HG--
branch : HEAD |
4b058f90f9e8a2c6b2eed275de4eb8cc5195a71d |
|
08-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Buffer API change: we no longer support limited sized buffers where
writes past limit wouldn't kill the process. They weren't used hardly
anywhere, they could have hidden bugs and the code for handling them was too
complex.
This also changed base64 and hex-binary APIs.
--HG--
branch : HEAD |
f851530449cc4d81572fe0ede863ae2202eb3b1f |
|
02-Sep-2004 |
Timo Sirainen <tss@iki.fi> |
Recent flags might have been wrong if they weren't set in ascending order.
--HG--
branch : HEAD |
d756ebcfa96bd7cff02097c8f26df9df368b81b1 |
|
12-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Broke mailbox_sync() into iterator.
--HG--
branch : HEAD |
439980f88f421039dea8335e92d3fa82b3f470a1 |
|
11-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Recent flags should be fully working now with maildir.
--HG--
branch : HEAD |
54f9cedf212e30f690e8c7487374f2ea890494c6 |
|
25-May-2004 |
Timo Sirainen <tss@iki.fi> |
Send recent counter changes when it actually changes.
--HG--
branch : HEAD |
e06c0b65c16ccce69bbee009ead14d7d3d17a256 |
|
24-May-2004 |
Timo Sirainen <tss@iki.fi> |
Index header changes now go through transaction log. Removed the kludgy
parameters for mail_index_sync_end(). Removed code duplication of syncing
index root mapping and view mapping. Some fixes to handling uidvalidity and
nextuid in syncing.
--HG--
branch : HEAD |
3cfff0ca01961d885bdbd6ef08d761880116af07 |
|
23-May-2004 |
Timo Sirainen <tss@iki.fi> |
mbox syncing fixes
--HG--
branch : HEAD |
b35f7104715edee0cfac6d46ab0b342033867eb7 |
|
22-May-2004 |
Timo Sirainen <tss@iki.fi> |
Set dirty flags through transaction log, not directly. Some other flag
fixes etc.
--HG--
branch : HEAD |
659fe5d24825b160cae512538088020d97a60239 |
|
22-May-2004 |
Timo Sirainen <tss@iki.fi> |
Transaction log contains only UIDs now, no more sequences which just mess up
everything.
--HG--
branch : HEAD |
d67f54632110cfb6aafe2d7cd1f99b031c0b208a |
|
10-May-2004 |
Timo Sirainen <tss@iki.fi> |
syncing fixes
--HG--
branch : HEAD |
641f0c0900ee6e7cf9667f4b40ed95cec7d0cdca |
|
01-May-2004 |
Timo Sirainen <tss@iki.fi> |
Recent-flag should work now
--HG--
branch : HEAD |
3a282e21c69b9cad1b5f9359ec3aebd3c8b8e901 |
|
28-Apr-2004 |
Timo Sirainen <tss@iki.fi> |
fixes
--HG--
branch : HEAD |
0cb2e8eb55e70f8ebe1e8349bdf49e4cbe5d8834 |
|
27-Apr-2004 |
Timo Sirainen <tss@iki.fi> |
importing new index code. mbox still broken.
--HG--
branch : HEAD |
9f80875e1e574a61bf5834535a8c328b5ceb13eb |
|
24-Aug-2003 |
Timo Sirainen <tss@iki.fi> |
IDLE uses now IO_*_NOTIFY to get instant notifying of mails.
--HG--
branch : HEAD |
6389aeec8c26b585e583c364b48ad12adf741898 |
|
23-Jul-2003 |
Timo Sirainen <tss@iki.fi> |
API change for updating message flags.
--HG--
branch : HEAD |
868772ffa3756090710d239f5a75cf20d3399760 |
|
15-Jun-2003 |
Timo Sirainen <tss@iki.fi> |
Only NOOP and CHECK will now always do a real mailbox sync. Other commands
will also do it but no often than once in 5 seconds. Also with maildir we
don't anymore try to sync it before running commands since syncing is now
done automatically whenever we try to access a file that doesn't exist.
--HG--
branch : HEAD |
d1bcee48225783610f0f6f639973677dd72b884a |
|
13-Feb-2003 |
Timo Sirainen <tss@iki.fi> |
Support for IDLE extension.
--HG--
branch : HEAD |
68a01b50d23bf8241c39fa639b495c636e73e1c0 |
|
10-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
index_storage_sync_and_lock() didn't set lock notify function.
--HG--
branch : HEAD |
c0435c854a0e7246373b9752d163095cc4fbe985 |
|
05-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
Naming style changes, finally got tired of most of the typedefs. Also the
previous enum -> macro change reverted so that we don't use the highest bit
anymore, that's incompatible with old indexes so they will be rebuilt.
--HG--
branch : HEAD |
c2bb1764c359ce85a7f7f789ead11dd613ff9769 |
|
25-Nov-2002 |
Timo Sirainen <tss@iki.fi> |
Locking changes triggered a bit larger cleanup :) If we have to wait for a
lock longer, the client is now notified about it every 30 seconds. Also if
mailbox opening fails because of lock timeout, we won't overwrite the index
anymore. Finally user gets a clear error message about lock timeout instead
of "internal error".
--HG--
branch : HEAD |
461692d3974949b1e6fa49fa50a6c7fd0a559da9 |
|
12-Nov-2002 |
Timo Sirainen <tss@iki.fi> |
mailbox_check_interval setting: Dovecot can notify client of new mail in
selected mailbox soon after it's received. This setting specifies the
minimum interval in seconds between new mail notifications to client -
internally they may be checked more or less often. Setting this to 0
disables the checking.
--HG--
branch : HEAD |
100e980900f652c9114997d7153e010e0639effe |
|
04-Nov-2002 |
Timo Sirainen <tss@iki.fi> |
And more locking/syncing fixes. Now it's finally beginning to look sane
again.
--HG--
branch : HEAD |
85eee5da111b2d6260f446bce3fba529e4294c3c |
|
02-Nov-2002 |
Timo Sirainen <tss@iki.fi> |
Mostly mbox locking/syncing fixes. Still some problems though.
--HG--
branch : HEAD |
48465c578a61127ba6069cf00e987078b8460e22 |
|
25-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
Don't crash either if expunge or update_flags sync_callbacks haven't been set
when syncing modify log
--HG--
branch : HEAD |
869e97e89856be3d7b32edab14f467d1e3496706 |
|
25-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
Error message fixes for APPEND. Make sure we don't crash if sync_callbacks
isn't set. Don't set sync_callbacks until SELECT is finished.
--HG--
branch : HEAD |
18c5ae52ca659071a35279dda22ba9556985805e |
|
23-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
Modify log was pretty much broken whenever it was switched.
--HG--
branch : HEAD |
b6feaf64103163d1a38c5ce6acf7fda8feb5911b |
|
20-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
When doing EXPUNGE, if there's been external flag changes in messages we're
going to delete, don't show the changes.
--HG--
branch : HEAD |
be421562fe3878ff07f370204a5cec5151992809 |
|
20-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
Fixes for expunge handling
--HG--
branch : HEAD |
1d0bb7bd8d4bcb68ace58e2a0f9c17744c3e56ac |
|
20-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
Modify log now stores the changes in ranges, so store 1:100 doesn't
generate 100 entries but just one. For single message changes this takes 8
bytes unneededly though, that could be fixed but for extra complexity so
I don't think it's worth it.
Also a change in sync-interface, expunge event no longer gets UID. It's not
currently needed and I don't see any rfcs/drafts wanting it either. It's
removed mostly because the log ranges makes it impossible to get it.
--HG--
branch : HEAD |
2968c03063b4c0203a4ae6c8d4493ac4377460ff |
|
19-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
mail_custom_flags_list_unref() isn't needed, the list returned by
..list_get() can't be free'd even while the flags inside it
may change. But only unused flags may change and only while calling
..fix_list(), so it's no problem. Makes COPYing mails to selected mailbox
work.
--HG--
branch : HEAD |
10ffe25023df7de97803cd94cc3ad97ff1c986a7 |
|
19-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
MailStorage interface change. We now let storage call several sync-functions
whenever it wants instead of forcing it through sync() function.
This now allows us to send client FLAGS and PERMANENTFLAGS messages whenever
new custom flags are added. Also EXPUNGE command now goes nicely through
expunge() function (which CLOSE used) instead of through flag in sync().
"Out of disk space" alert is also sent now whenever it happens, before it
was sent only when opening mailbox.
Message set parser now complains when referencing mail sequences outside the
possible range. Modify log before sent flags/expunges changes to client even
if it didn't know about those messages yet. Also some other smaller
cleanups.
Beginnings of fixing APPEND and COPY when trying to store mails into
selected mailbox. Before this didn't work too well or simply broke things.
Still broken, needs a bit more changes..
--HG--
branch : HEAD |
d8bbb406a4a394b0109d4d5318cf0b02a57e7407 |
|
06-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
First version of binary tree file, still some locking issues while opening
the file.
--HG--
branch : HEAD |
ac50d909882a95e3012a186c577ddecb2d3f310f |
|
29-Sep-2002 |
Timo Sirainen <tss@iki.fi> |
Modify log fixes. STORE and SEARCH didn't handle properly message sequence
numbers when some in the middle were externally deleted.
--HG--
branch : HEAD |
135dddafc7290890b2305596418bb4fb3b0c7494 |
|
27-Sep-2002 |
Timo Sirainen <tss@iki.fi> |
Send RECENT after all EXISTS replies. Check for new mail in mailbox after
each FETCH, STORE and SEARCH commands and notify about it with EXISTS.
--HG--
branch : HEAD |
6141d8c6260c3dfaeb9dd4ed09197e4122fd017e |
|
15-Sep-2002 |
Timo Sirainen <tss@iki.fi> |
More cleanups. lib-storage should handle "out of disk space" conditions
properly.
--HG--
branch : HEAD |
02b32cf39a098edf60981fc228e4b034f11f3b90 |
|
14-Sep-2002 |
Timo Sirainen <tss@iki.fi> |
lots of cleanups. also index/datafile is now capable of staying in memory,
as long as it's noticed while opening the index.
--HG--
branch : HEAD |
d60705bcd8e777fa90f6d0daa615c4207592c80b |
|
08-Sep-2002 |
Timo Sirainen <tss@iki.fi> |
Moved custom flags handling into lib-index.
--HG--
branch : HEAD |
3c7a9aa32ddc1a930a75681a6c3cafb8d10fe810 |
|
27-Aug-2002 |
Timo Sirainen <tss@iki.fi> |
More overflow fixes.
--HG--
branch : HEAD |
1215bc4d7e747846f282cf710e61f3768e69238d |
|
22-Aug-2002 |
Timo Sirainen <tss@iki.fi> |
s/user_data/context/ and some s/Data/Context/
--HG--
branch : HEAD |
66251e6ab31e5cc153fe5cae608e416dacafe9cd |
|
08-Aug-2002 |
Timo Sirainen <tss@iki.fi> |
Initial revision
--HG--
branch : HEAD |