e78c6f8ecf4927dd579df8bcfd600b96e3f3a2f0 |
|
19-Feb-2018 |
Josef 'Jeff' Sipek <jeff.sipek@dovecot.fi> |
lib-storage: Generate snippet while saving new mails |
bcb4e51a409d94ae670de96afb8483a4f7855294 |
|
01-Jan-2018 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2018. |
c147bff818798a979d93537f72f5c1f68f5d5ba8 |
|
24-Nov-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
global: Use t_buffer_create
sed -i -e 's/buffer_create_dynamic(pool_datastack_create(), */t_buffer_create(/g' |
87490012895b4f371635ded00add04c9107dcfef |
|
18-Sep-2017 |
Josef 'Jeff' Sipek <jeff.sipek@dovecot.fi> |
lib-storage: convert index to use container_of |
cb1e7cb6766cfb18900e600961fb8b45a4dffaf8 |
|
08-Jun-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: Fix crash in mail_get_header_stream() when its previous stream wasn't at EOF
At least this could have happened when indexes were disabled and running:
FETCH 1 (envelope body.peek[header.fields (foo)] bodystructure)
Fixes:
Panic: file index-mail-headers.c: line 198 (index_mail_parse_header_init): assertion failed: (!mail->data.header_parser_initialized) |
7522446d6514e5593c9d4d7e4beacd328301cb23 |
|
11-May-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-storage: Use new mail_cache_set_seq_corrupted_reason |
093d5c0cdf04c9190b6377e624206cdf85fe665a |
|
03-Feb-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: Add assert to make sure header parsing isn't recursed |
b674bd911aaab7e8b1a77c106a0b5bccb603439f |
|
30-Jan-2017 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
lib-mail: message-part-data: Renamed struct message_part_envelope_data to message_part_envelope. |
042a58438dc324c6d4de18e4c8a68044d6328e66 |
|
30-Jan-2017 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
lib-imap: imap-envelope: Moved imap_envelope_headers to lib-mail/message-part-data as message_part_envelope_headers. |
57e3b63a75335f45cf6cf9cd89317e2e6cec249d |
|
30-Jan-2017 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
lib-imap: imap-bodystructure: Moved message_part_data header parsing and query functions to their own module in lib-mail.
Moved code from imap-bodystructure and imap-envelope. |
946f22af116d5af80d5bbe1710ac121aa5acef71 |
|
30-Jan-2017 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
lib-imap: imap-envelope: Renamed imap_envelope_parse_header() to message_part_envelope_parse_from_header(). |
df459621b9124dfd88d56619ac84611f30fec854 |
|
30-Jan-2017 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
lib-imap: imap-bodystructure: Renamed imap_bodystructure_parse_header() to message_part_data_parse_from_header(). |
ea5a14af8ae816feda08937084954e3912748181 |
|
10-Jan-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: Compile & indent fix for previous change. |
6b44fc75c0039d1006ce4d543544552449b8e229 |
|
10-Jan-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-storage: Prevent recursion in header parsing
If header parsing error occurs and error handling tries
to get fields, such as Message-ID, it will cause
crash. This fixes problem by preventing reading from
non-cached headers while they are being parsed.
Fixes lmtp: Panic: file ../../../src/lib/array.h: line 219 (array_idx_i):
assertion failed: (idx * array->element_size < array->buffer->used) |
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 |
2ac5f36aa7c2e7a07ba8815d43a6d7483f62e74c |
|
16-Dec-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Change string position/length from unsigned int to size_t
Mainly to avoid truncating >4GB strings, which might potentially cause
some security holes. Normally there are other limits, which prevent such
excessive strings from being created in the first place.
I'm sure this didn't find everything. Maybe everything could be found with
compiler warnings. -Wconversion kind of does it, but it gives way too many
unnecessary warnings.
These were mainly found with:
grep " = strlen"
egrep "unsigned int.*(size|len)" |
990d55ce3fc461eeacce3ef830b1c5dde5c3f150 |
|
18-Nov-2016 |
Josef 'Jeff' Sipek <jeff.sipek@dovecot.fi> |
lib-storage: fix index_mail_get_headers return value
And make it more obvious that we're not setting the actual return value in
index_mail_get_first_header. |
045d5940e885be4d5d3ce96f2fde31ae799fa556 |
|
18-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: Add asserts to make sure mailbox_header_lookup_ctx is used correctly. |
2fa3e62e491621ca7a25211ecc6746c5823cacde |
|
16-Aug-2016 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-storage: Make sure data->stream isn't NULL
Makes static analysers happy |
02b78558dc03daa2e7da2010b63f247b49936a38 |
|
03-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
Use mail_get_*stream_because() wherever possible. |
f0339f522dc9c8e2e8a29ef9a3f937c431c6bd1b |
|
06-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Use only explicit int -> bool conversions
These were checked with a patched clang. |
b88c43d09a288e99d439c78de4cc613212ea924c |
|
03-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Avoid using buffer_get_data()
Especially buffer_get_data(buf, NULL) generates worse code than just
using buf->data directly. |
489301ee88b2174e3171875e979e667de2c4a174 |
|
28-Feb-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-storage: When cached mime.parts is detected to be inconsistent, log it as hex-encoded. |
8b5b1f6cb19253dfd7821fcef8e9b7e95e6caf3a |
|
28-Feb-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
Use mail_set_cache_corrupted_reason() wherever possible. |
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/' |
6358619ca9de4fa81ccc49af7d79c1c123852293 |
|
19-Jan-2015 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Removed caching body snippet while message is being saved.
This broke saving mails with dbox, because it attempts to open the mails
too early. Also the generation was a bit costly operation to do if it wasn't
actually wanted to be cached.
So in future we'd first want to check if body snippet is actually wanted. If
it is, then generate the potential snippets while the message is being
parsed (always generate the snippet for the best found MIME part, replacing
existing snippets when needed). This requires the message_snippet_generate()
API to support sending input as partial message_blocks. |
52fbebc87d7ae4fc4585863d38cb87f166a6521a |
|
16-Jan-2015 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Added MAIL_FETCH_BODY_SNIPPET. |
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> |
073f965351846b8c97347b882c441dc336965e26 |
|
09-Oct-2014 |
Timo Sirainen <tss@iki.fi> |
lib-storage: If uncached header unfolding fails, panic instead of returning error.
This really shouldn't be happening. This also makes it clear that return
value -1 means some kind of I/O error instead of corruption. |
8b12e7b44abca3bd51a1c46e19ca504f3b55e723 |
|
09-Oct-2014 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Fixed header parsing when there were multiple same header names.
For example if a mail had:
Name1: a
Name1: b
Name2: c
If the Name1: was initially added to cache and Name2: not, but later on both
were attempted to be added to cache, the Name2: lookup would have been added
with "b" instead of "c" value. |
70612e07102b75a8511aa7f9de60771176b18de0 |
|
24-Sep-2014 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Headers were sometimes added to dovecot.index.cache with wrong line number value.
This happened if the header parsing was done multiple times for the same
mail. The end result being that when fetching multiple headers as a stream,
the headers could have been returned in the wrong order. This messed up at
least dsync's header hash comparisons. |
eed20b28dd9039d21f5c2770beef2e8b19f7c2f9 |
|
04-Jul-2014 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Bodystructure parsing flags weren't updated correctly on error conditions.
This fixes an assert-crash sometimes when mail parsing failed. |
d052dcfff0c96a0af17a3158e51f709edf4b93a1 |
|
04-Jul-2014 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Log mail istream read failures in one place.
Also handle ENOENT errors by checking if the mail has already been expunged,
and if so don't log an error, just return "mail is already expunged" error
to client. |
66f9709e0c7604e2282b930b6a48fe9f0dd20ab8 |
|
05-May-2014 |
Timo Sirainen <tss@iki.fi> |
lib-storage: mail_get_headers_utf8() now replaces NULs with spaces.
Perhaps there should also be another API function which actually allows
returning strings with NULs in them. |
a8c5a86d183db25a57bf193c06b41e092ec2e151 |
|
04-Feb-2014 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2014. |
d8a7046624a082938501e8268ed0cdcba4826e96 |
|
20-Nov-2013 |
Timo Sirainen <tss@iki.fi> |
lib-storage: mail_get_headers*() returned only the first header from cache. |
e3411c496000d3e2797b43a33584dfba954e815e |
|
20-Nov-2013 |
Timo Sirainen <tss@iki.fi> |
lib-storage: mail_get_*header*() still didn't handle cached values correctly.
If header ends with ":", the ":" shouldn't be returned as part of the value. |
d48ab236010e588c7b52e54db47fe9842a2e27e8 |
|
20-Nov-2013 |
Timo Sirainen <tss@iki.fi> |
lib-storage: mail_get_*header*() were unnecessarily looking up the headers twice. |
2188b937671a76bb79df1526884fe3601f13a42f |
|
20-Nov-2013 |
Timo Sirainen <tss@iki.fi> |
lib-storage: mail_get_*header*() didn't remove leading whitespace for headers from cache.
But it was removed when the headers were found by parsing the full header. |
8ae72ad7d0c69e972cfa65d1e2ce4e3e9a8b765c |
|
24-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
Replaced all -1U and (unsigned int)-1 with UINT_MAX.
It's somewhat clearer this way. Also clang's -fsanitize=integer gives
runtime errors about -1U (but not about explicit casts, so no need to change
(type)-1 casts). |
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. |
49be238e250e99af8c69321264a461d8f6ceef62 |
|
22-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Catch input stream errors when parsing mail. |
045e41df5a72f7726aca03f6687cd79e7281fb4b |
|
29-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Crashfix to previous stream error checking change. |
50de46721446795c42943c572625f2f1a9abfe01 |
|
29-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Check and log stream errors when parsing/searching messages. |
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] |
6202c9d2492d33ff28ba61a5c57c6768df9577d0 |
|
12-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
lib-storage: mail_get_header_stream() now always returns end-of-headers LF. |
f7ec15aefabeb0a17d1f262bc5e9a15e43dfc5ad |
|
11-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
istream-header-filter: Added i_stream_header_filter_add() to add extra headers. |
31a574fda352ef4f71dbff9c30e15e4744e132c0 |
|
25-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Added array_append_zero() to write a zero-filled record to an array.
Replaced (void)array_append_space() calls with it. |
82d3a1d1594ed93d04d7bf999027b3e5104de6e4 |
|
24-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
lib-mail: message_header_decode_utf8() API changed to not give return value.
It's a rather unnecessary optimization and it wasn't even correct when the
input wasn't valid UTF8. |
a10ed8c47534b4c6b6bf2711ccfe577e720a47b4 |
|
23-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Marked functions parameters that are allowed to be NULL. Some APIs were also changed.
The non-obvious APIs where NULL parameter was changed to "" are
master_service_init() and auth_master_user_list_init().
These checks can currently be enabled only on a patched clang:
http://llvm.org/bugs/show_bug.cgi?id=6786 |
5f5870385cff47efd2f58e7892f251cf13761528 |
|
12-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2012. |
5df33e9ee65eec194105b338c55dedbf8422f695 |
|
08-Dec-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Code cleanup. |
9f6da3b2a0a488bf35c11bbbb34542f69b985a40 |
|
23-Nov-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Getting headers as UTF-8 could have returned garbage for multi-line headers. |
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. |
2d01cc1880cf2afd4fb1c8ad7fa6ce78e562e71e |
|
25-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Moved all transaction stats_* to struct mailbox_transaction_stats. |
1eaaa2c9003cf3fbf672d597473e3f84e70d2ee6 |
|
16-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Moved stats_* from mail to transaction.
With the API changes to search, having them in mail doesn't make sense
anymore, since mailbox_search_next() can return multiple different mails
with different stats. |
045aa2f81225ceffbffe71a088dabb8881c65512 |
|
04-Apr-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Removed struct mail_private.extra_* fields.
There isn't much point in keeping them separated. |
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. |
e29f8a6a52ca72fc6010132fb86dd00e9d96432a |
|
31-Jan-2011 |
Timo Sirainen <tss@iki.fi> |
lib-storage: Moved setting "wanted fields/headers" fields for sort program from imap-specific code.
Also separate between fields that are actually wanted to be fetched from the
fields that sorting wants to temporarily use. |
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. |
7fc0f80480063a9d4cb9e8c07b50db2a5627799e |
|
22-Jul-2010 |
Timo Sirainen <tss@iki.fi> |
Fixing my english: s/non-?existing/nonexistent/ |
b9a664472557182cff0825a2285b8fca39f72947 |
|
23-Jun-2010 |
Timo Sirainen <tss@iki.fi> |
lib-storage: When getting decoded headers, don't fail when MIME encoded-words expand to LFs.
This fixes errors like: Corrupted index cache file dovecot.index.cache:
Broken header Subject for mail UID 1
--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 |
6f6f3dc5b33b09097192124bce17b7017d6bbfcf |
|
06-Aug-2009 |
Timo Sirainen <tss@iki.fi> |
index-mail: Expose tee_stream so plugins can read the stream too while mail is being read.
--HG--
branch : HEAD |
c9dea5c23355dea35c6fa423de69f6507852efe4 |
|
17-Jun-2009 |
Timo Sirainen <tss@iki.fi> |
Use array_sort() instead of qsort() wherever possible.
--HG--
branch : HEAD |
de58be41126e5d68008d2ea706d62ccdc1f29337 |
|
05-Jun-2009 |
Timo Sirainen <tss@iki.fi> |
mailbox_header_lookup*() private API changed.
--HG--
branch : HEAD |
b0a901f1dbe9e05ac1c92a0974af6bce0274f31a |
|
29-Apr-2009 |
Timo Sirainen <tss@iki.fi> |
struct mail_private now contains all kinds of statistics about file accesses.
--HG--
branch : HEAD |
23f822a2fcf31e9003a11228a93d80900f5c55e4 |
|
03-Apr-2009 |
Timo Sirainen <tss@iki.fi> |
Compiler warning fixes on 64bit systems.
--HG--
branch : HEAD |
e217d6fce33746e198ecc21bff0bc658664c9ef4 |
|
23-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
Don't cache Date: header if we don't really want it.
--HG--
branch : HEAD |
942312f81841c0e3a8b5609c7530826afa5a7f3b |
|
23-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
Don't cache Date: header if we don't really want it.
--HG--
branch : HEAD |
96a464e3e417557153272c964fc8a0e9bb6d6b86 |
|
19-Feb-2009 |
Timo Sirainen <tss@iki.fi> |
If we detect cached header is corrupted while unfolding it, mark the cache corrupted.
--HG--
branch : HEAD |
45312f52ff3a3d4c137447be4c7556500c2f8bf2 |
|
06-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2009.
--HG--
branch : HEAD |
f38854c96aef76e0c859df4e8f7303325b7ae8a1 |
|
19-Nov-2008 |
Timo Sirainen <tss@iki.fi> |
mail_get_headers_utf8() and mail_get_first_header_utf8() return headers unfolded now.
--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 |
cfb86adbda733e4945db44c6be27f8fda142c0a3 |
|
25-Oct-2008 |
Timo Sirainen <tss@iki.fi> |
Make mailbox_header_lookup_ctx's list of headers available.
--HG--
branch : HEAD |
3889d05019a072a602f7a8c1eeb8a6f1c1362720 |
|
31-Aug-2008 |
Timo Sirainen <tss@iki.fi> |
If imap.envelope is cached, use it instead of rebuilding it.
--HG--
branch : HEAD |
469a6cf705835ade57dcb59979b6e054207ae5d7 |
|
31-Aug-2008 |
Timo Sirainen <tss@iki.fi> |
Minor code cleanup.
--HG--
branch : HEAD |
f95b3d29bc56f139c18c880aa574a0ca72b0cffb |
|
19-Jul-2008 |
Timo Sirainen <tss@iki.fi> |
struct mailbox_header_lookup_ctx can now be referenced/unreferenced so it
can be shared among multiple struct mails.
--HG--
branch : HEAD |
faa6c140211a8ac8e2f5fcc5bcd79ade640d46a3 |
|
30-May-2008 |
Timo Sirainen <tss@iki.fi> |
When saving new messages, make sure we parse the "Date" header so we can
add "date.sent" to cache file even if "hdr.Date" isn't added.
--HG--
branch : HEAD |
290c1fd71c447eaab8d3204a8a103ac2797aef18 |
|
29-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
array_clear() is now equivalent to buffer_clear(), use it.
--HG--
branch : HEAD |
1952eb389b8aba39195380970f905dcebea38dfc |
|
29-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
array_clear() is now equivalent to buffer_clear(), use it.
--HG--
branch : HEAD |
5c14450988bfb47cb1fdb2a963d4a89e2d5e3ae1 |
|
25-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
And compile fix for last change.
--HG--
branch : HEAD |
eabdaabda807926d000d1c6210ef32d2836b2546 |
|
25-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
And compile fix for last change.
--HG--
branch : HEAD |
1fbaab38f98c4874cfd012812c8cdbc02f0c79c6 |
|
25-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
array_clear() only truncates the array, growing its size later doesn't fill
it with zero. Use buffer_reset() instead here which does zeroing.
--HG--
branch : HEAD |
3be5f05cf7d268baf387aa87aae77532ff7b7933 |
|
25-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
array_clear() only truncates the array, growing its size later doesn't fill
it with zero. Use buffer_reset() instead here which does zeroing.
--HG--
branch : HEAD |
992118a50af940482b6cf884a89be56d7015580a |
|
14-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
Changed message_parser_deinit() to return -1 if the parser was using
preparsed broken message parts. Callers catch the error and mark the cache
file corrupted.
--HG--
branch : HEAD |
251294c7acff0fc7993300723b7e8794569d37be |
|
14-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
Changed message_parser_deinit() to return -1 if the parser was using
preparsed broken message parts. Callers catch the error and mark the cache
file corrupted.
--HG--
branch : HEAD |
19e8adccba16ff419f5675b1575358c2956dce83 |
|
11-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
Renamed T_FRAME_BEGIN/END to T_BEGIN/END. Removed T_FRAME() macro and
replaced them with T_BEGIN/END calls. T_FRAME() made it difficult to debug
code with gdb.
--HG--
branch : HEAD |
76b43e4417bab52e913da39b5f5bc2a130d3f149 |
|
01-Jan-2008 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2008.
--HG--
branch : HEAD |
00db1d630a723113609598e28acbae4d416e0cb4 |
|
09-Dec-2007 |
Timo Sirainen <tss@iki.fi> |
Memory leak fixes
--HG--
branch : HEAD |
eddd9bf1a1369aea4a2715f6be1137da6d17d293 |
|
05-Dec-2007 |
Timo Sirainen <tss@iki.fi> |
Replaced t_push/t_pop calls with T_FRAME*() macros.
--HG--
branch : HEAD |
ae1b268ffff743ad9927c304a1344c5cbd7f909d |
|
22-Nov-2007 |
Timo Sirainen <tss@iki.fi> |
Cleanups/rewrites to how/when date/size caching is done.
--HG--
branch : HEAD |
86ad841251a38aa9ffcf4db4ee2c9fd449121bcb |
|
22-Nov-2007 |
Timo Sirainen <tss@iki.fi> |
Don't cache all headers just because they're listed in cache file. First
check if we actually want to cache them.
--HG--
branch : HEAD |
48ac48572e6a196ac6c415180f0c8dcfad35d788 |
|
21-Nov-2007 |
Timo Sirainen <tss@iki.fi> |
mail_get_headers() returned bad data when headers were already cached.
Dovecot doesn't use this function internally, but it might have caused
crashes with Sieve plugin.
--HG--
branch : HEAD |
4d0d535efdfc4aad3bd48b74adfafecf58094e0a |
|
02-Oct-2007 |
Timo Sirainen <tss@iki.fi> |
Make sure we parse everything so they can be saved to cache.
--HG--
branch : HEAD |
5dabb8e733a8af2337eb543f782eb6c43ea462dc |
|
22-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Don't assert-crash if looking up a non-parsed header after headers were
already parsed once.
--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 |
648d24583c1574441c4fa0331a90bd4d6e7996c5 |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
pool_unref() now takes ** pointer.
--HG--
branch : HEAD |
d3837c0362588792db3e3148d217f31ff3172922 |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Renamed strarray_length/remote() to str_array_length/remove()
--HG--
branch : HEAD |
87b426af6a2365c6840b14281a98c23e903bf28e |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Added i_ prefix to strcmp_p(), strcasecmp_p() and memcasecmp().
--HG--
branch : HEAD |
83bb013a99f0936995f9c7a1077822662d8fefdb |
|
12-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
mail_*() APIs changed to return int and return the actual data as pointer.
Changed some code to do error handling a bit better.
--HG--
branch : HEAD |
7a54d58280aad8a64f266c61273ea1e8dff511a3 |
|
11-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Cache received date, sent date, save date and physical size when saving
mails if they're wanted.
--HG--
branch : HEAD |
fe363b433b8038a69b55169da9dca27892ad7d18 |
|
24-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
Removed memory pool parameter from iostreams. Default pool was almost always
used, and the stream usually required destroying anyway so it didn't even
make freeing memory easier.
--HG--
branch : HEAD |
dce5a2719df4fc64a8762d2aa94ba98dcf9cd6fe |
|
19-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
Added mail_get_first_header_utf8() and mail_get_headers_utf8().
--HG--
branch : HEAD |
e54512a5189192fe72d1e2c53927c98c5ac920b4 |
|
18-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
Moved tee stream handling to index-mail code.
--HG--
branch : HEAD |
45b2a27617d8475f71fdfc870690e46cd63849f2 |
|
15-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
We didn't cache correctly headers that existed in cache file for other
messages, but we weren't currently interested of.
--HG--
branch : HEAD |
1045a1d4c191a14867cde0d5cea9e4ac5e36f85f |
|
16-May-2007 |
Timo Sirainen <tss@iki.fi> |
Assert-crashfix in some conditions.
--HG--
branch : HEAD |
043c8a96a035379bcba04f487d58457beefdfcaa |
|
03-Apr-2007 |
Timo Sirainen <tss@iki.fi> |
Header parser has now flags parameter to tell it how to handle linefeeds.
Changed message parser's boolean parameter to enum as well.
--HG--
branch : HEAD |
77af0bd168cf3e3ddc3ae68abc82bfad7e9b5ff4 |
|
04-Apr-2007 |
Timo Sirainen <tss@iki.fi> |
Don't feed index_mail_parser headers while searching message bodies, unless
we actually need something from there.
--HG--
branch : HEAD |
dd0dea1fdd913a04bae16e82dd66d67571a5f6c2 |
|
03-Apr-2007 |
Timo Sirainen <tss@iki.fi> |
Removed message_parse_from_parts(). Added message_parser_init_from_parts()
instead. Searching code now uses it whenever possible.
--HG--
branch : HEAD |
2cfe9983ce7a6280636ee12beccc2e865111967b |
|
15-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Replaced void *context from a lot of callbacks with the actual context
type. Also added/fixed some context type checks.
--HG--
branch : HEAD |
e192a3b1ca8ae857e7d87298ea507d32977ba570 |
|
13-Oct-2006 |
Timo Sirainen <tss@iki.fi> |
Don't use time_t anymore in cache file. uint32_t is large enough and makes
cache files compatible between 32bit and 64bit systems.
--HG--
branch : HEAD |
91dca97b367c54a139c268b56a0c67f564bd9197 |
|
10-Sep-2006 |
Timo Sirainen <tss@iki.fi> |
Replaced ARRAY_CREATE() macro with [ipt]_array_init() macros. The macro
has no side effects so it might as well be lowercased.
--HG--
branch : HEAD |
26a8b7deb3a5b6f26f9c4d71538e1248f680e4be |
|
10-Sep-2006 |
Timo Sirainen <tss@iki.fi> |
Removed type parameter from ARRAY_CREATE since it's not needed anymore.
--HG--
branch : HEAD |
0a9ad944630d84066c5c445eb4b657206ad88e80 |
|
23-Aug-2006 |
Timo Sirainen <tss@iki.fi> |
Grow index_header_lookup_ctx pool initial size.
--HG--
branch : HEAD |
5cda0bfea032000c4a51134c748d9efe6614870b |
|
31-Jul-2006 |
Timo Sirainen <tss@iki.fi> |
index_mail_cache_add() was used with lib-storage's internal indexes for most
of the received date, physical size and virtual size cache additions. This
may have caused all kinds of trouble, but since it went unnoticed this long
perhaps not..
--HG--
branch : HEAD |
20195ef995a4eb63a282283db63f1dc0605323e0 |
|
24-Jul-2006 |
Timo Sirainen <tss@iki.fi> |
Restore data stream's offset after it has been internally changed, so that
it doesn't have much visible effect on the stream returned by
mail_get_stream(). The buffered data will still be lost, but this should
help with the most common use cases.
--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 |
aa04335e9bb7fc899275c7468c83bcdfad2778d1 |
|
17-Jun-2006 |
Timo Sirainen <tss@iki.fi> |
Crashfix if mail's data is fetched in specific order (I'm not sure how to
reproduce this though, but the crash has happened to others)
--HG--
branch : HEAD |
2ebeb22b9a8a8bb7fbe2f2e2908478a220792b87 |
|
09-May-2006 |
Timo Sirainen <timo.sirainen@movial.fi> |
Changed mailbox_save_*() API a bit: Moved the struct mail *dest_mail to
save_init() instead of being in save_finish(). This way you can request
wanted fields from the mail while it's being saved.
With maildir the message is being parsed at the same time as it's being
saved, and the results are stored into cache file.
--HG--
branch : HEAD |
d96f86fb881c5b106649e8994ead1052acf24030 |
|
08-May-2006 |
Timo Sirainen <timo.sirainen@movial.fi> |
Rewrote the message bodystructure parser to allow parsing from non-blocking streams. Also did a couple of API changes and cleanups.
--HG--
branch : HEAD |
cd56a23e21f1df3f79648cf07e2f4385e2fadebb |
|
25-Feb-2006 |
Timo Sirainen <tss@iki.fi> |
Added i_stream_destroy() and o_stream_destroy() and used them instead of
*_stream_unref() where possible. Fixes at least one problem with io_remove()
being called after socket was closed, which caused problems with epoll.
--HG--
branch : HEAD |
19a1cfc537d979c532fac71264dba0b9dabc65d9 |
|
25-Feb-2006 |
Timo Sirainen <tss@iki.fi> |
Last memory leak fix actually started crashing.
--HG--
branch : HEAD |
97511ac4d7607e1ba64ce151eda3d9b5f9775519 |
|
18-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Added mail_cache_min_mail_count setting.
--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 |
5b1da062c037e9352ddf18ccfdf99248116f44d0 |
|
07-Aug-2005 |
Timo Sirainen <tss@iki.fi> |
Fixed a hang if parsed header was already cached.
--HG--
branch : HEAD |
3af0a1a2c2ef22a14c6b3c5cc4f780a2ea4df438 |
|
13-Jul-2005 |
Timo Sirainen <tss@iki.fi> |
Header caching was more or less broken.
--HG--
branch : HEAD |
16f816d3f3c32ae3351834253f52ddd0212bcbf3 |
|
04-Jul-2005 |
Timo Sirainen <tss@iki.fi> |
Moved array declaration to array-decl.h and include it in lib.h. So array.h
needs to be now included to use any array_*() functions.
--HG--
branch : HEAD |
d2b94d25f842cd1b7acaf4dd7de858f7c6a821c9 |
|
03-Jul-2005 |
Timo Sirainen <tss@iki.fi> |
Mark *all* non-found headers that are registered in cache file as non-found
at the end of header parsing.
--HG--
branch : HEAD |
55773f17bccf6361d6599ffcbe072d7c9fe205bf |
|
03-Jul-2005 |
Timo Sirainen <tss@iki.fi> |
Try to be a bit smarter about when to parse header/body.
--HG--
branch : HEAD |
872b8fd8a8db97dc54067b7ab25bda96ec0aac0d |
|
03-Jul-2005 |
Timo Sirainen <tss@iki.fi> |
Don't store headers into cache file if they are already there.
--HG--
branch : HEAD |
042e2b8447b34051f0380baafcf0073704430239 |
|
17-Apr-2005 |
Timo Sirainen <tss@iki.fi> |
Don't even try to allow searching zero number of headers.
--HG--
branch : HEAD |
bb92096bdd934cc19def61b5fb4644af6351b62d |
|
17-Apr-2005 |
Timo Sirainen <tss@iki.fi> |
Raised initial pool sizes.
--HG--
branch : HEAD |
1e242794e7a4f653f18fbb8edfe9ccec489a3a08 |
|
11-Apr-2005 |
Timo Sirainen <tss@iki.fi> |
mail_get_headers() and mail_get_first_header() returned headers with "name:"
prefix if they weren't in cache file.
--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 |
87460b08cb97b31cde640d4975a6aa2c1d0e7226 |
|
29-Mar-2005 |
Timo Sirainen <tss@iki.fi> |
Renamed mail_get_header() to mail_get_first_header() and mail_gets_headers()
to mail_get_header_stream(). Added new mail_get_headers() which returns
NULL-terminated string list of all found headers.
--HG--
branch : HEAD |
cf52b37d807553e91a2d6fb7cb2c8b4c34589e1d |
|
29-Mar-2005 |
Timo Sirainen <tss@iki.fi> |
Changed some buffers to arrays.
--HG--
branch : HEAD |
fdc557286bc9f92c5f3bb49096ff6e2bcec0ea79 |
|
15-Mar-2005 |
Timo Sirainen <tss@iki.fi> |
Major mail-storage API changes. It's now a bit cleaner and much more plugin
friendly. Removed proxy_mailbox* stuff, they were difficult to use and
there's now much easier way to replace them.
--HG--
branch : HEAD |
38d7db318188c4ac9cdc8c6cdb936b36a5258e19 |
|
06-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
mail->get_header() was pretty broken. This affected SORT/THREAD.
--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 |
9db263f2b9ab771fbf9a2bff44a245c45eaef218 |
|
05-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Don't crash if fetching ENVELOPE for expunged message.
--HG--
branch : HEAD |
a24b0595f0f7d3925d4c9ac26fa503ff87c43e43 |
|
28-Aug-2004 |
Timo Sirainen <tss@iki.fi> |
Fixed crash if mail data was fetched in specific order. Plus some minor
fixes.
--HG--
branch : HEAD |
185ed0142fbbfb86e7a98519e7c6f11ec00723cd |
|
22-Aug-2004 |
Timo Sirainen <tss@iki.fi> |
Changed istream-header-filter API a bit. Added HIDE_BODY option. Fixed
mail.get_headers().
--HG--
branch : HEAD |
bd96f3feda739823bac48ab881be2a19d7ccb114 |
|
22-Aug-2004 |
Timo Sirainen <tss@iki.fi> |
header filter can now optionally use either LF or CRLF linefeeds.
--HG--
branch : HEAD |
a72355fef49c512c13b7d8c3e07f4f76ebd57a10 |
|
22-Aug-2004 |
Timo Sirainen <tss@iki.fi> |
istream-header-filter now parses the headers incrementally while read()ing,
instead of doing it at initialization and storing into one large buffer.
--HG--
branch : HEAD |
2767104d81e97a109f0aa9758792bfa1da325a97 |
|
15-Aug-2004 |
Timo Sirainen <tss@iki.fi> |
We never do blocking reads/writes to network anymore. Changed imap and pop3
processes to use a single I/O loop.
Not much tested yet, and currently LIST/LSUB may eat too much memory and
APPEND eats all CPU.
--HG--
branch : HEAD |
60576cd64e6a537413cd90104f7e862f71d48c81 |
|
31-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Added struct message_header_line.middle and middle_len to contain the ':'
in header and whitespace around it.
--HG--
branch : HEAD |
98dd8e6e81f11f1e6040ca72f4916242d246c863 |
|
23-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
get_index() wasn't working with caching disabled
--HG--
branch : HEAD |
d6a1fe8633cf50cdf9441a7f4c2171bbd562ca9b |
|
22-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
compiler warning fix
--HG--
branch : HEAD |
4bbee99b3aef449a9a2a11a5b5cf1ca486915c49 |
|
20-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Cache fixes. Decisions are saved again.
--HG--
branch : HEAD |
2aecf7be5834e7f6520f8deaad683a6fa1de4d61 |
|
18-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
header caching fixes
--HG--
branch : HEAD |
36977c4a74e164f7d81eb4785f0a5d3ff436fd19 |
|
18-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Avoid parsing headers twice to get IMAP envelope.
--HG--
branch : HEAD |
e015e2f7e7f48874495f9df8b0dd192b7ffcb5cc |
|
18-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Header caching redesigned. New design allows caching decisions per field, so
they can be divided to temporary/permanent. Cached headers are now always
returned in original order, old code didn't guarantee it. Some other caching
changes. (still missing code to store changes in caching decisions)
--HG--
branch : HEAD |
1efb8b95e87ca3940cc74f9553a3c8ca5d85ead3 |
|
09-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Always create cache transaction. Easier that way .. and fixes a crash.
--HG--
branch : HEAD |
992a13add4eea0810e4db0f042a595dddf85536a |
|
08-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Cache file fixes, API changes, etc. It's still in somewhat ugly state, but
getting better..
--HG--
branch : HEAD |
8d2e9fb23658c579778c3995d0181f46e3424ab7 |
|
04-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
cache fix
--HG--
branch : HEAD |
1171f0abf442638bac1827bb24a0b6b8eb682a82 |
|
04-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Cache API updates. Don't return direct pointers to mmaped cache file anymore.
--HG--
branch : HEAD |
72cbf33ae81fde08384d30c779ff540752d9256c |
|
04-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Cache updating is done now by first reserving space where to write, and then
writing to it whenever buffer gets full. There is no persistent cache file
locks anymore because of this, but it also means that the same cached field
may be written multiple times to the file by different processes. Also since
we reserve more space than we actually need at first, it some space can be
wasted if multiple processes are updating the cache.
--HG--
branch : HEAD |
a40d26f83af808a0ea1e212c001d682a96d870b0 |
|
04-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Caching fixes and optimizations. Removed all network byte ordering code -
it's not worth the trouble and would require massive changes in indexing
code as well to be useful. Changed next_offset to prev_offset which is
updated while syncing index.
--HG--
branch : HEAD |
24fc71a693331ffe77e2b6d81c70aca6fa055e47 |
|
22-Jun-2004 |
Timo Sirainen <tss@iki.fi> |
Added mail_index_transaction_get_updated_view() which can be used to access
uncommitted messages.
--HG--
branch : HEAD |
2632143b0175c933bec1e59b5dc0811a095dc18d |
|
17-Jun-2004 |
Timo Sirainen <tss@iki.fi> |
Added skip_initial_lwsp parameter to message_parse_header_init().
--HG--
branch : HEAD |
0cb2e8eb55e70f8ebe1e8349bdf49e4cbe5d8834 |
|
27-Apr-2004 |
Timo Sirainen <tss@iki.fi> |
importing new index code. mbox still broken.
--HG--
branch : HEAD |
8fb1e3e2349c9940732b5bb77a2a4053b8f72a4f |
|
21-Oct-2003 |
Timo Sirainen <tss@iki.fi> |
assert
--HG--
branch : HEAD |
ed6d301337be19bc06621b83134c5b330bab6339 |
|
21-Oct-2003 |
Timo Sirainen <tss@iki.fi> |
Don't save empty header lists
--HG--
branch : HEAD |
b3a53020f8f629fa8b0bc4be4ad5660d9701f22d |
|
21-Oct-2003 |
Timo Sirainen <tss@iki.fi> |
Some cleanups and extra checks to detect if header names list gets
duplicated (can happen, why?..)
--HG--
branch : HEAD |
fca6425332579ae0f4e07600af9d37bf5261e20b |
|
07-Oct-2003 |
Timo Sirainen <tss@iki.fi> |
If there was multiple headers with same name, we stored only first one into
cache.
--HG--
branch : HEAD |
9b9c9d9600c9c0058cc2a0faf5d703474c699e21 |
|
03-Oct-2003 |
Timo Sirainen <tss@iki.fi> |
get_header() returned values wrong
--HG--
branch : HEAD |
cd466fe7b84b0223735a6469c7f7bc225f65996d |
|
21-Sep-2003 |
Timo Sirainen <tss@iki.fi> |
data_stack_pool split into two: unsafe_data_stack_pool which works like
before, and a new one which verifies that stack frame stays the same
whenever the pool is accessed.
--HG--
branch : HEAD |
8f61542ca70f3f0dda15630447a00877b132efa8 |
|
10-Sep-2003 |
Timo Sirainen <tss@iki.fi> |
get_header() returned only first line of multiline headers
--HG--
branch : HEAD |
80cdfe47daf6129410bafcecbe5c9faf09f2721b |
|
10-Sep-2003 |
Timo Sirainen <tss@iki.fi> |
Headers were returned twice sometimes
--HG--
branch : HEAD |
a4f746ed38bd3c1a7d38e5b380e0e394bd095fff |
|
10-Sep-2003 |
Timo Sirainen <tss@iki.fi> |
compile fix
--HG--
branch : HEAD |
644268f7848a7c4221146d0b11feb8ed5bbed233 |
|
08-Sep-2003 |
Timo Sirainen <tss@iki.fi> |
Stop parsing cached headers when we've got everything.
--HG--
branch : HEAD |
40674ed767cb1a1128e877a6f3ebf5b7eb26c86f |
|
08-Sep-2003 |
Timo Sirainen <tss@iki.fi> |
bugfix
--HG--
branch : HEAD |
e5d5be18ef40789e8d713647331e63f64895882b |
|
07-Sep-2003 |
Timo Sirainen <tss@iki.fi> |
bugfix
--HG--
branch : HEAD |
bb8937e0c503b49a752858f00445646062b6f06e |
|
24-Aug-2003 |
Timo Sirainen <tss@iki.fi> |
use int32_t instead of int in struct mail_sent_date
--HG--
branch : HEAD |
203560029e3ad8687c2c759e6a81ecdb8b37ebe6 |
|
24-Aug-2003 |
Timo Sirainen <tss@iki.fi> |
Assert -> mark cache corrupted
--HG--
branch : HEAD |
96541d31299bb40b5a6efdbf9b4cb3d4f4b4a069 |
|
21-Aug-2003 |
Timo Sirainen <tss@iki.fi> |
Message parsing can now be done in two parts - header and body. We're now
more eager at parsing MIME structure for message. It's done whenever body
has to be fully read (eg. rfc822.size).
--HG--
branch : HEAD |
645f258ea29afaf09b673fc65d1bd788dfec8db8 |
|
20-Aug-2003 |
Timo Sirainen <tss@iki.fi> |
If BODY/BODYSTRUCTURE is requested with some other headers, parse the
headers only once. If body contains multiple MIME parts, cache the internal
MIME structure so BODY[part] fetching doesn't need to parse it again.
--HG--
branch : HEAD |
1bdda5c0c30463160c47151537e6bb2c6c994841 |
|
18-Aug-2003 |
Timo Sirainen <tss@iki.fi> |
Changed how cached headers are stored. Previously when we added new headers,
all the old headers were duplicated as well which wasted space. Also fixed
several bugs in caching.
--HG--
branch : HEAD |