b8a1347a9ea2cecf0d16f24748c2600fea8c7158 |
|
13-Dec-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib: Add event API
The events are hierarchical and the child events inherit the parents'
fields. The events will be attached to "objects", which gives them some
context. For example each mail user, mailbox and mail will have its own
event. The events can also have a log prefix, so logging events to e.g.
mail will always log a consistent prefix that identifies which mail is
being logged about.
The events will also be used for statistics. Typically this is done by
logging a debug event, which contains fields that are interesting for
statistics. The interesting events will have a name, which can be used
to identify them when configuring which statistics are wanted to be
tracked. It's possible to also track events that have no name, but that
requires using the source code's filename:line as the event name. That
of course may change between releases, so it's not very reliable. |
17aeaeec37ef11d4f9fbb80aa2583f574b4ac3bf |
|
19-May-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib: Add dovecot_build_info variable containing Dovecot build information.
By default this includes the version, including the git hash. The idea is
that this version information would be available in all the core dumps.
The DOVECOT_BUILD_INFO can be overridden by compiling with:
DOVECOT_BUILD_INFO='"build info"' make |
1e766413c73d963cdd55c17afe8ec86b46dd8463 |
|
16-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib: Add fd_close_maybe_stdio()
The idea is that this should be used whenever closing fds that may be 0 or
1. If they are closed normally, the following code may end up using 0/1 fd
for other purposes, which could cause problems. |
8dc04cf60ea2f2d176ce4e5ca36c050e4c0a858b |
|
08-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
lib: Added i_unlink() and i_unlink_if_exists()
These log the error message on a failed unlink(). They also include the
source code file and line number to make it easier to find which unlink()
actually failed if the path itself doesn't already clearly identify it.
This can be especially useful if the path is (null), "" or contains some
corrupted garbage. |
3637a2ad3b2ead17efd5591f73effd3b140d8d2d |
|
09-Jun-2014 |
Phil Carmody <phil@dovecot.fi> |
lib: bit twiddles
bits_requiredXX() gives the number of bits required to store an unsigned
integer. Here, XX is 8, 16, 32, 64, reperesenting the size of the operand.
It belongs in the same file as nearest_power(), which makes most sense
in a separate bit twiddles file. Universal enough to stay in lib.h by
inclusion.
Signed-off-by: Phil Carmody <phil@dovecot.fi> |