5cccb4af850bb3ba81e73a8fb4f6881c3e1d4046 |
|
15-Feb-2018 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
lib-mail: message-parser: Fixed Clang 6.0 compiler warning.
Warning was:
index-mail.c:1182:3: warning: arithmetic on a null pointer treated as a cast
from integer to pointer is a GNU extension [-Wnull-pointer-arithmetic]
message_parser_parse_body(data->parser_ctx,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../src/lib-mail/message-parser.h:95:28: note: expanded from macro
'message_parser_parse_body'
(void *)((char *)context + CALLBACK_TYPECHECK(callback, \
~~~~~~~~~~~~~~~ ^ |
12e5ac049bd74f8b98d9dc62adcb0bf3217beef6 |
|
25-Apr-2016 |
Martti Rannanjärvi <martti.rannanjarvi@dovecot.fi> |
lib-mail: return void from message_parser_deinit() |
3ef9cfcb6bdd392549080181432bd0cbe2e00850 |
|
28-Feb-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-mail: Added message_parser_deinit_from_parts()
The returned error strings could still be improved to give more details,
especially give an approximate offset of where the problem is. |
ace2d837c054352936eace96a93c60821b5e0abb |
|
11-Aug-2014 |
Timo Sirainen <tss@iki.fi> |
lib-mail: Added comments to message-parser.h |
f684e87d4e2d192efdf5984d18fcede3f5a33771 |
|
17-Apr-2014 |
Timo Sirainen <tss@iki.fi> |
lib-mail: Moved struct message_part to a separate message-part.h |
27a44fcfd8d19bffe0f267f20a2b5d3fe7600fdd |
|
19-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
Removed CONTEXT_TYPE_SAFETY macro and reimplemented its functionality better.
gcc/clang now gives a compiler error in many places if callback isn't
exactly what was expected. It's also now much easier to add more of these
checks. |
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 |
46512a5964b1c36796400286cf1e72b86b8ea6a8 |
|
20-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
message parser: Added MESSAGE_PARSER_FLAG_INCLUDE_BOUNDARIES flag. |
0e0606d74a05d451b3438922b9a63ebf1755f838 |
|
12-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
message parser: Added MESSAGE_PARSER_FLAG_INCLUDE_MULTIPART_BLOCKS.
Patch by Stephan Bosch. |
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 |
eaed1f066f95866c53fbc3f527d4c0123c7215cc |
|
06-Oct-2007 |
Timo Sirainen <tss@iki.fi> |
Removed message_parser_set_crlfs(). It's no longer needed and it might not
work as wanted anyway.
--HG--
branch : HEAD |
c25356d5978632df6203437e1953bcb29e0c736f |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Changed .h ifdef/defines to use <NAME>_H format.
--HG--
branch : HEAD |
983a75ef88be63d8b596e165b015bd85bf90b354 |
|
02-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
By default assume MIME message if Content-Type: exists even if Mime-Version:
doesn't. MESSAGE_PARSER_FLAG_MIME_VERSION_STRICT disables this.
--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 |
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 |
00efa7d99981e18e286c02b18c1163dde18ee521 |
|
15-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Type safe callbacks weren't as easy as I thought. Only callback(void
*context) can be handled generically. Others can be handled specially, but
only if all the parameters are pointers, otherwise eg. int parameter can be
replaced with long without compiler giving any warnings.
--HG--
branch : HEAD |
59151b71059df1190acd75d8717ed04a7920c862 |
|
15-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Added context parameter type safety checks for most callback APIs.
--HG--
branch : HEAD |
fd11c77a9f93a14193d28305679ea19911314ac5 |
|
16-Sep-2006 |
Timo Sirainen <tss@iki.fi> |
Removed unused flag and added comment.
--HG--
branch : HEAD |
25379350e02f5ebaefe225b08e318cbd6b107132 |
|
09-May-2006 |
Timo Sirainen <timo.sirainen@movial.fi> |
Some fixes and added message_parser_set_crlfs().
--HG--
branch : HEAD |
92c3a04218e0203426e3b6361359d00917ec3934 |
|
08-May-2006 |
Timo Sirainen <timo.sirainen@movial.fi> |
Added message_part to struct message_block and some cleanups.
--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 |
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 |
137ea7ca34005345aa2304a940149b7f3774d727 |
|
07-Aug-2005 |
Timo Sirainen <tss@iki.fi> |
s/occured/occurred/
--HG--
branch : HEAD |
5a2917dd7248d61c540dd310627a781934ba5334 |
|
22-Aug-2004 |
Timo Sirainen <tss@iki.fi> |
message_parse_header_next() can now return "need more data" with nonblocking
input streams.
--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 |
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 |
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 |
ccc1e87e2e5d951de7703aeef2bfc90fec9f467c |
|
13-Jul-2003 |
Timo Sirainen <tss@iki.fi> |
Ignore Content-* headers if there's no MIME-Version header. Note that this
change breaks cached message parts in indexes.
--HG--
branch : HEAD |
6e0054c2e5efc526df6287da368335680a856714 |
|
04-Jun-2003 |
Timo Sirainen <tss@iki.fi> |
IMAP protocol doesn't allow server to send NULs to client. Send ascii #128
instead.
--HG--
branch : HEAD |
5bc4a5fd9a421f4c5763e03c0449479cedcf9f06 |
|
26-Mar-2003 |
Timo Sirainen <tss@iki.fi> |
Better handling for multiline headers. Before we skipped headers larger than
input buffer size (8k with read (default), 256k with mmap). The skipping was
also a bit buggy.
Now we parse the lines one at a time. There's also a way to read the header
fully into memory before parsing it, if really needed.
--HG--
branch : HEAD |
7c424aa51c956c628e3512055841aa2f9eef4833 |
|
27-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
Function typedefs now define them as functions, not function pointers.
--HG--
branch : HEAD |
5ce2084ada06ade9f44fc2914c34658e9a842dc1 |
|
20-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
mail-storage.h interface changes, affects pretty much everything.
FETCH, SEARCH, SORT and THREAD handling were pretty much moved from
lib-storage/ to imap/ so adding non-index storages would be much easier now.
Also POP3 server can now be easily implemented with lib-storage.
Not too well tested, and at least one major problem: partial fetching is
_slow_.
--HG--
branch : HEAD |
f923659c0e5298263d80622c99f4dc4132b4675b |
|
11-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
Naming change for function typedefs.
--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 |
a3ea111cfdbfd4f32baeb0bd7f1d72568c60a023 |
|
04-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
Use unsigned char* when accessing non-NUL terminating strings. Compiler
warnings would then notify about accidentally passing them to functions which
require them NUL-terminated. Changed a few functions to use void* to avoid
unneeded casting.
--HG--
branch : HEAD |
4a6f9ed8e5412508dcba1eabb58a3680ad5e9b68 |
|
03-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
Rewrote rfc822-tokenize.c to work one token at a time so it won't uselessly
take memory, maybe also a bit faster. This caused pretty large changes all
around.
Also moved all string (un)escaping code to lib/strescape.c.
--HG--
branch : HEAD |
ecc81625167ed96c04c02aa190a1ea5baa65b474 |
|
06-Dec-2002 |
Timo Sirainen <tss@iki.fi> |
Renamed IBuffer and OBuffer to IStream and OStream which describes their
functionality better. I tried to keep the variable names and comments also
sensible.
--HG--
branch : HEAD |
b646fdb90f75ab80ea7feca42fa2e1f8e788b004 |
|
14-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
Split IOBuffer into mmaped IBuffer, file IBuffer, memory data IBuffer and
file OBuffer.
--HG--
branch : HEAD |
43ae45b90718684dbbd67a240e60c52cbc6496ba |
|
09-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
changed all "temporary memory pool" references to "data stack"
--HG--
branch : HEAD |
1f4b9beda52e08d3db29746370af05bee17670c4 |
|
05-Oct-2002 |
Timo Sirainen <tss@iki.fi> |
message_parse_header() now calls the function with empty name/value at end
of headers. we use this feature with mbox to allow usage of Content-Length
header field.
--HG--
branch : HEAD |
6697a923d6768bf8d71f87f80b90747cf6870753 |
|
08-Sep-2002 |
Timo Sirainen <tss@iki.fi> |
move size_t fixes
--HG--
branch : HEAD |
30e8beb5b2322d92093cbfbc8f47d227a185fcd5 |
|
02-Sep-2002 |
Timo Sirainen <tss@iki.fi> |
Added support for caching of MessagePart data. This is useful for fetching
body[part]s. Also BODY and BODYSTRUCTURE can be generated fast using it.
Also fixed index corruption in some situations when more cached data was
added to index.
--HG--
branch : HEAD |
da18528bccce3e1ba9c97c7bf06799b952d7bc3f |
|
01-Sep-2002 |
Timo Sirainen <tss@iki.fi> |
there was no need for MessagePart->pos.virtual_pos, so removed it.
--HG--
branch : HEAD |
ec9d382ea6adbf2c8a0e5dd304acb629ebed3203 |
|
27-Aug-2002 |
Timo Sirainen <tss@iki.fi> |
Introduced uoff_t which is the unsigned-equilevant of off_t. This was needed
to be able to handle off_t overflows properly. Also changed a few unsigned
int fields into uoff_t so we should now support >2G mails if uoff_t is
64bit. Also fixed several potential integer overflows.
--HG--
branch : HEAD |
1215bc4d7e747846f282cf710e61f3768e69238d |
|
22-Aug-2002 |
Timo Sirainen <tss@iki.fi> |
s/user_data/context/ and some s/Data/Context/
--HG--
branch : HEAD |
7317807bed321d9d8a7e7b9086947f38e2d9e333 |
|
22-Aug-2002 |
Timo Sirainen <tss@iki.fi> |
fixes, seems to be somewhat working now.
--HG--
branch : HEAD |
e403d34ae6904cd8d9f72345a2f2dc017d3b46aa |
|
22-Aug-2002 |
Timo Sirainen <tss@iki.fi> |
Message data is parsed in blocks (no longer entirely mmap()ed). Several
IOBuffer changes. All mixed signed/unsigned comparisions were fixed so code
can now be compiled with gcc's -W flag. mbox support is broken currently,
and there's most likely several other problems too.
--HG--
branch : HEAD |
66251e6ab31e5cc153fe5cae608e416dacafe9cd |
|
08-Aug-2002 |
Timo Sirainen <tss@iki.fi> |
Initial revision
--HG--
branch : HEAD |