bcb4e51a409d94ae670de96afb8483a4f7855294 |
|
01-Jan-2018 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2018. |
e5224c0589916fb22f95f959326cf4b6221715b0 |
|
05-Oct-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Move libdict_backend to lib-dict-backend |
5012586ed3a75857ced48302bf0b8a8dc049796a |
|
29-Mar-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Keep a linked list of all transactions in dict.
This helps debugging if a transaction is leaked. |
be64b3bbf9e1664071516f2a4a68a0916da7abac |
|
23-Mar-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-dict: Ensure all iterations and transactions are done in deinit |
f32da6b73c1edb6963eae0d4a5c1f995ad23151a |
|
23-Mar-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-dict: Track transaction counts |
7932885c8a996991f46f877cca0043d2cd2cc9da |
|
23-Mar-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-dict: Use dict-fail iterator and transaction when missing from dict driver |
10f126b558e39b0f69fe2baecc9e74d2bfad8c7d |
|
23-Mar-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
dict: Update correct counter in dict_iterate_init |
8e066cce954f6d23acec4b669b09b358401bd386 |
|
20-Mar-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-dict: Ensure init returns dict |
b198cd6da331eb55d300b0e83f59695c58d5885c |
|
17-Jan-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Add assert to make sure all iterators are deinitialized. |
85b234661baa110e046d3d9ad22f59e69fa75c69 |
|
15-Jan-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Add support for lookup to return multiple values
Implements only the initial stubs to the drivers. |
e28b4fc2b62be020156a857485b61842b3b5d791 |
|
10-Jan-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Add dict_transaction_set_timestamp() |
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 |
ea90267d457a03b5b1e0e2a5111949609edb4cb3 |
|
11-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Fix infinite loop when row limit is reached.
If dict_iterate_has_more() keeps returning TRUE, the caller keeps calling
dict_iterate(). |
6acd1a48e1377e74d3008288e5e95e006f41265c |
|
17-Oct-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Added dict_iterate_set_limit() |
aef407f147034a569591c0f59593342a8c7b39ea |
|
17-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Added dict_transaction_no_slowness_warning() |
701eb90460d6c57845dc4e0bf595a5d0b90b01c1 |
|
01-Jul-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Don't log slow background async commit/iteration replies.
If a caller has already finished iteration, or does async commit without a
callback, it means that it started the query without caring when it
finishes. The caller may already have been doing blocking work while
waiting for the dict reply. We don't want to log a warning, because it
could be completely wrong. |
a5ec9755556e3d97d7e6d78cb1b53046370e6598 |
|
20-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Added dict_switch_ioloop() |
75a7ba70c7b377eff0f7124b8943cf2976ac2533 |
|
13-May-2016 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
dict: Set default transaction commit callback
Removes need for NULL check on drivers |
661998e2ccd772ad92a9d4a75cb712692a8c94b3 |
|
08-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: dict_transaction_commit*() returns now error string |
c2a66e7950cb4d3fc4d68e4480ea8f39bdd7c871 |
|
08-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Changed internal transaction_commit() to return void
Somewhat simplifies the code now that it doesn't have to both call a
callback and return the same ret. |
055389c58fa3915e12fb4e72ec86782ce77c5c72 |
|
08-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: dict_iterate_deinit() returns now error string |
c4478af52de63804efef2055580adf1dfc8679c6 |
|
08-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Changed dict_wait() to return void.
If it encounters any failures, it should just make sure to abort any pending
async requests before returning. |
b5052fbfdbc2678cc8f12899afe55c998f43b740 |
|
08-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: dict_lookup() returns now error string |
8f9a18189f01448267100fa54c3b4bb8639a1a56 |
|
08-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Moved/removed explicit stack frames in dict drivers.
Added them back to dict_set/unset/atomic_inc() in dict.c. Others are
unlikely to be called many times. |
20e04227229970d148801c507946666e2a9bd838 |
|
08-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Renamed dict_init_full() to dict_init() |
373b27178af59c8579967c126e7c2c002974d095 |
|
21-Apr-2016 |
Baofeng Wang <baofeng.wang@dovecot.fi> |
lib-dict: remove dict_append()
Remove all *_dict_append and redis_append functions and corresponding
command from lib-dict. |
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/' |
f990dde096949bd2b76aab28936211689bd6cadc |
|
23-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
Don't try to pass through void function's return value
I wish gcc or clang complained about these. |
d694b6009574ee6e3cfaee3834cbdbcd431affb0 |
|
02-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Added async API for lookup and iteration. |
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> |
39ea5717264668e2c7f9f7986eb821d21785f47f |
|
28-Aug-2014 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Changed dict.init() API to take struct dict_settings and added dict_init_full().
This allows giving more settings to dict in future as needed. Unfortunately
it also breaks the internal dict API, but there aren't really any plugins
widely using it, so it's not a big problem. |
a8c5a86d183db25a57bf193c06b41e092ec2e151 |
|
04-Feb-2014 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2014. |
9686ada8061745b4b8753572f6c04b7a27a8544e |
|
08-Dec-2013 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Added "fs" wrapper dict backend, which uses lib-fs.
Each dict key is a separate file where the file's contents are the dict
value. |
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. |
eca38954bcf972618f6b85932a3690acbd2b673a |
|
13-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
lib-dict: dict_init() now returns error string instead of logging it |
10399559650f552a23949772be79eb6a80198c5a |
|
15-Sep-2012 |
Timo Sirainen <tss@iki.fi> |
dict_init() API changed to return int. |
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] |
75bb83681e30d6a86109bbafdfe6b513c11124bc |
|
15-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Added memcached_ascii backend. |
2aed6c2062317d1750f59c5c88e77d9f10967462 |
|
14-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
dict: Implemented dict_append() |
fefd62f9aaccecbc6011ecae359a3389668cbff5 |
|
23-Jul-2012 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Added memcached backend using its binary protocol. |
e3237982a4e6346c2fec4b8f8fb946c826a363fd |
|
23-Jul-2012 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Allow backends to have iteration methods as NULL if they don't support it. |
31257b47d47510ceb093a6b218810a1a5b830c55 |
|
08-Jul-2012 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Added initial version of Redis support.
The code is a bit ugly and doesn't handle anything except key lookups. |
5f5870385cff47efd2f58e7892f251cf13761528 |
|
12-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2012. |
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. |
9c7f6dbf65ca01026e5f9c8c8b67c7e629c0b5e7 |
|
18-Feb-2010 |
Timo Sirainen <tss@iki.fi> |
dict: Added dict_iterate_init_multiple().
--HG--
branch : HEAD |
8d25b6ad05b99e75613cb045a121efd51e6afbb6 |
|
07-Feb-2010 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Changed dict_iterate API.
--HG--
branch : HEAD |
8971ca621b7a7337947306494731b75d1d3919e5 |
|
05-Feb-2010 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Added dict_[un]escape_string().
--HG--
branch : HEAD |
e59faf65ce864fe95dc00f5d52b8323cdbd0608a |
|
25-Jan-2010 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2010.
--HG--
branch : HEAD |
7bd72e4deca3cbf757dd1ea298486d9f3bc24226 |
|
02-Dec-2009 |
Timo Sirainen <tss@iki.fi> |
Use array_foreach() more.
--HG--
branch : HEAD |
3954326e793bdef1e94e0ad781ed6cc7e48beebb |
|
07-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
dict: Added support for async commits. Changed dict_atomic_inc() behavior.
--HG--
branch : HEAD |
4073f0dbf3277f981a8fcee3b89ea15aaf380a7f |
|
28-Jun-2009 |
Timo Sirainen <tss@iki.fi> |
dict proxy: Use base_dir as the default dict-server location.
--HG--
branch : HEAD |
d3fce898d31ad40b554c91f3035a7f4d7d52ed52 |
|
19-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
Added dict_transaction_commit_async().
--HG--
branch : HEAD |
45312f52ff3a3d4c137447be4c7556500c2f8bf2 |
|
06-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2009.
--HG--
branch : HEAD |
e3fabe8d0faa9aab7cae2d0eee9653f581a3061d |
|
19-Oct-2008 |
Timo Sirainen <tss@iki.fi> |
Added a simple flat file dict backend.
--HG--
branch : HEAD |
fd1a8db8fa61f9c38f063f62753d1bfef0261e19 |
|
26-Aug-2008 |
Timo Sirainen <tss@iki.fi> |
dict sql: Added configuration for mapping dict paths to SQL fields.
--HG--
branch : HEAD |
1dc6f277f5ac6a3dd5cd6aa75a7ef691de9acb7a |
|
27-Aug-2008 |
Timo Sirainen <tss@iki.fi> |
dict API: deinit functions now take pointer-to-pointer parameter which gets NULLed.
--HG--
branch : HEAD |
080a75584cfbe21ffd2d23c6bbb4cd8fdfd0990c |
|
02-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
dict: Added assert to make sure username is never NULL.
--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 |
eddd9bf1a1369aea4a2715f6be1137da6d17d293 |
|
05-Dec-2007 |
Timo Sirainen <tss@iki.fi> |
Replaced t_push/t_pop calls with T_FRAME*() macros.
--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 |
14cdb8cbe37616464c965aec90a8494b339db538 |
|
17-Apr-2007 |
Timo Sirainen <tss@iki.fi> |
Error message update
--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 |
419cf63077e755935ce105747d6ebc67b7d38a7f |
|
30-Jul-2006 |
Timo Sirainen <timo.sirainen@movial.fi> |
Berkeley DB dict support is now enabled only when using --with-db configure option.
--HG--
branch : HEAD |
92d1458b00f4f236c4cec96a696253d3bbf8b05a |
|
30-Jul-2006 |
Timo Sirainen <timo.sirainen@movial.fi> |
Dictionary changes: Added support for defining value's type. Key is still always a string. Added support for sorting the iteration replies. Added dict_unset(). Added Berkeley DB support. Most of the code written by Tianyan Liu.
--HG--
branch : HEAD |
2be7df5df08ac4639ad83559ec5fcf552c84fb4a |
|
30-Jul-2006 |
Timo Sirainen <tss@iki.fi> |
If invalid key is given to dict_set() or dict_atomic_inc() fail the whole
transaction in commit. Keep track of changes that are actually done, so if
nothing has changed in transaction don't even bother to commit it.
--HG--
branch : HEAD |
52de9d38fcad80df481667bac821cb8222785fe6 |
|
30-Jul-2006 |
Timo Sirainen <tss@iki.fi> |
dict_atomic_inc(): Do nothing if diff parameter is 0.
--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 |
9844b5359f5cab77e4c31a7ac9e4a60a0073929e |
|
31-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Dictionary takes now a username parameter, which is used for private
queries. Made dict-sql use "insert .. on duplicate key update" syntax, which
unfortunately doesn't work with PostgreSQL yet.
--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 |
f8ead0942a9b7c8fcf91414ed1b534d5807ca555 |
|
30-Dec-2005 |
Timo Sirainen <tss@iki.fi> |
Added dictinary lookup server and a "proxy" dict implementation to talk to
it.
--HG--
branch : HEAD |
02a05d2791f1e9271853304336fec41cdab9d2ee |
|
14-Dec-2005 |
Timo Sirainen <tss@iki.fi> |
API changes
--HG--
branch : HEAD |
28c75d59f1d1a7caeb85635964f3881c0038eb23 |
|
10-Dec-2005 |
Timo Sirainen <tss@iki.fi> |
Added dictionary API and implementation for SQL. It's meant for looking and
modifying key=value pairs. In future we may need to use this for many
different things, but for now it's only used by quota-dict plugin.
--HG--
branch : HEAD |