bcb4e51a409d94ae670de96afb8483a4f7855294 |
|
01-Jan-2018 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2018. |
47a5a7e8296f3b8f2fac9a0659d4de3f2723ba4a |
|
06-Oct-2017 |
Martti Rannanjärvi <martti.rannanjarvi@dovecot.fi> |
global: Use PRI* macros and %zu instead of casting |
0d1b8b6bec79746c5d89d57dd8c1688946bd9237 |
|
19-Sep-2017 |
Josef 'Jeff' Sipek <jeff.sipek@dovecot.fi> |
global: start relying on timeout_remove(NULL) being a no-op
Cleanup performed with the following semantic patch:
@@
expression E;
@@
- if (E != NULL) {
- timeout_remove(&E);
- }
+ timeout_remove(&E); |
217683437468663839ec9bb6c7d2892b98fae4f9 |
|
15-Jan-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Support multiple values for lookups |
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. |
904cdf7f28e5ba801bbd4a9baf3c50d847ac14e1 |
|
10-Jan-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: When failing to resend commands after reconnect, their success is uncertain.
It's possible that the writes before the disconnection did actually finish
successfully. If any of them were commits, we need to return
DICT_COMMIT_RET_WRITE_UNCERTAIN. |
345fceae2f430dcad449f2a09598ba1a225116dd |
|
10-Jan-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Pass through transaction timestamp to dict-server |
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 |
d640b628f27c9bbcbf6fe902b257002a3f0da57b |
|
02-Dec-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Don't timeout lookups without waiting 1sec in dict ioloop.
What could have happened was:
- dict-client sends a request to dict-server
- dict-client process starts doing something else
- dict-server answers
- dict-client process continues doing something else for over 30 seconds,
not reading the dict-server answer
- dict-client process gets back to dict ioloop, which runs the timeout
before checking if there is anything available for reading.
Now we'll wait for 1 second in the last dict ioloop before assuming that
there's a timeout. |
542d7a4afa3d7d8686ebdba691ad02d1c2e99452 |
|
22-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: dict_lookup*() deleted the first byte of the result. |
cacaa94d258a1f1dd5630e64771186b73813648c |
|
21-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Add extra NULL-check to make static analyzer happier
str_array_length() already checked NULL internally though. |
44c54229a117b8dab05eaff9c54ba61fbae9a39f |
|
21-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Server can now send command replies in any order.
This way one slow lookup doesn't block all the other ones.
This change keeps backwards compatibility in the dict protocol for both
client and server. |
d485968ffb1b2456452d79eeda33abeb1bdd5733 |
|
21-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Include reconnection-status in slow dict lookup messages. |
2525acc19ab4c8ce64c063a5be8e6b8d198a9fbe |
|
21-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Add warn_slow_msecs setting
This allows configuring the default 5 seconds "slow dict lookup" warning. |
8e1491e4924e3f9fc474a99438b6297b8d1ce1f3 |
|
21-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Add time spent in dict-server to "slow dict lookup" messages.
This way you can see if the slowness was due to some communication problem
between dict-client/server or internally in dict server.
This change keeps backwards compatibility in the dict protocol for both
client and server. |
fc494f157828dee9bb9885dd3630e9b7b45cdb25 |
|
21-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Code cleanup - handle tab-unescaping before callbacks. |
6d5a7004a7c0b528b7ba05b2656bea80b3f2743d |
|
15-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Use io_wait_timer for tracking wait times.
This way the "dict wait" time includes all ioloop waits that wait on the
dict-client, not just in dict_wait(). |
87e7fc1f2804c6f2ae43952def1f30b8cdf00826 |
|
14-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: When dict-server times out, log ioloop/lock waits. |
c1814529bdc9f1468b4fe75beb080991ee3feea0 |
|
14-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Code cleanup to timeout handling.
No functional changes. |
155e321dd4de5796e2f81a7d336b2df09b5603a0 |
|
14-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Dict server timeout may have occurred too early. |
8c0e4118f21c30455d4911fabc4bf50bfaeca712 |
|
11-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Forward dict_iterate_set_limit() to dict server |
980b0dbdcbeed1a15fdbf4ec1d00352d71a66c5d |
|
11-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Code cleanup - remember all iteration flags |
e55b5cf82e6d109c658e0b5049cae1ba8edd3b91 |
|
24-Oct-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Fix logging how much time was spent in other ioloops in slow lookup warnings.
The warning's idea is to show why the lookup could have been slow. We
differentiate between time spent in dict_wait() waiting only for the
dict result and time spent in other ioloops waiting for potentially other
things as well (and time spent waiting for locks during this time).
The previous code didn't work right when multiple ioloops were used, which
happened sometimes.
Also changed %u to %d just in case some calculation is wrong. It's nicer to
get a slightly negative value rather than a huge positive one. |
4b1781e4c64be52e25b5994e5242dbe696cc7d29 |
|
20-Oct-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Use i_strchr_to_next() wherever useful. |
4f051c3082080b9d69ef12c3720c683cff34b0da |
|
17-Oct-2016 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-dict: Duplicate result value in mempool
Duplicate the result value already in callback
to avoid it getting lost during async calls.
Reported & tested by Pierre Jaury. |
e33462704d38d05c4109929da4923794f699e3cc |
|
26-Sep-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Fixed lock and ioloop wait timings in log messages.
Previously it was logging the total amount of time spent on lock waits or on
ioloop during the existence of the entire process, rather than how much time
the command itself was spending on those. This wasn't very useful.
Now it also tries to separate the time spent on the main ioloop and in
dict_wait(). |
8d72f209049edf50f5cd40c56efd2c0b33f892a2 |
|
26-Sep-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Don't return "Dict server timeout" too early.
This could have happened when many dict commands were being run without
the timeout being reset in the middle. |
9fa33a0c56e1d9a09c72698097ee269fa04e07b1 |
|
26-Sep-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Remove timeout when there are only background commands.
Normally the timeout wasn't added in the first place, but it was if a
non-background command was added first and it was followed by a background
command. |
4598234b354e4f43bdc5855d96be2854e6cdeb98 |
|
13-Sep-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Don't crash if dict-server returns broken reply.
Just treat missing <tab>value as empty value. |
9578698c44322dad310a9756f3b4dee8e7de646a |
|
23-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: In slow query warnings, log time spent in ioloop and lock waits.
Possibly we want to remove the warnings entirely if most of the time has been
spent on lock waits (or alternatively: not spent in ioloop). |
aef407f147034a569591c0f59593342a8c7b39ea |
|
17-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Added dict_transaction_no_slowness_warning() |
56558eb46c396db9c7a0cfd89413b1c50b126b7e |
|
17-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Keep transaction's pointer in command until it's finished. |
5d234d36b44965f623246520ada9bea02bbf746f |
|
17-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Improve "slow dict operation" warnings in error conditions.
There's no need to log both an error and a warning. |
cf1b9b686bca3e0de3dda1a95dab66ad4590d8ef |
|
10-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Improved timeout error message. |
48aee87c1ce3b3cd10d53f61b4665da81ef6623b |
|
05-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Fixed error message for failed synchronous dict_lookup()
The error message was allocated from data stack, but freed too early. |
878c4d5eed3307a4018595ded0f79424e9fc1a0d |
|
02-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Don't keep a request timeout when there are only background commands. |
8604a0675d3fa7986b872233fc7eb68068e9b80a |
|
02-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: When we get disconnected, reconnect and re-send commands. |
d0fa29db7def334c142f46507a7d0c0bd6c70932 |
|
02-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Improved timeout error message |
ee8c7d8ee07d90dba2cec4550991f2582689718f |
|
02-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Fixed hang in async iteration if it failed. |
c5d27aee77dad4b10d6dd915b9cb4c8757c0e988 |
|
17-Jul-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Added DICT_COMMIT_RET_WRITE_UNCERTAIN |
9a382894724292e2af60ef94fc471d761f45e5d5 |
|
17-Jul-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Added enum dict_commit_ret. |
1cfe369d1278a9e2e6cc2e46103db48c493e1f21 |
|
14-Jul-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Improved logging for slow queries.
Especially commits now say what the first query within the commit was. |
b11e9673b057d18c21c683ab17ee7350b9455dde |
|
01-Jul-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Attempt to connect to dict socket for 1 second before failing. |
38fa43690a1cdc1917245f5f834ec40a89e83d91 |
|
01-Jul-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Make sure query's start_time is up-to-date. |
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. |
98b7ea1744aecc52750f1dfb0d8ed6f9646b4605 |
|
30-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: When skipping connect() due to earlier failure, preserve the original error. |
e13bef0a49ee60e4886967b331a7f7d5c96377cc |
|
01-Jul-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: If commit fails to send BEGIN, don't try sending anything else.
Fixes memory leak and also fixes overwriting the original error message. |
ade5567577dadb0b275c840208d3ad21a9f00a36 |
|
20-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Explicitly specify used dict_vfuncs methods for drivers.
This allows adding more methods without modifying all the existing drivers. |
a5ec9755556e3d97d7e6d78cb1b53046370e6598 |
|
20-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: Added dict_switch_ioloop() |
a7e46c05358b059aad2b90f01e271ba6732c5eee |
|
20-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-dict: dict-client rewrite to support async operations |
0dffa25d211be541ee3c953b23566a1a990789df |
|
06-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: unsigned int:1 -> bool:1
perl -i -pe 's/unsigned int ([^,:;]+):1;/bool $1:1;/' **/*.[ch] |
e93184a9055c2530366dfe617e07199603c399dd |
|
06-Jun-2016 |
Martti Rannanjärvi <martti.rannanjarvi@dovecot.fi> |
lib: remove autoclose parameter from [io]_stream_create_fd
Use [io]_stream_create_fd_autoclose() for autoclose. |
567ace1f60eca983acbc9b42d7569a5c16e8c3ec |
|
31-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Fixed idle_msecs setting. |
cbe2d47fda811fc56ba59cb2811c3fc26033b03c |
|
08-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Use standard str_tabescape-functions
There's no reason to reimplement them here separately. |
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. |
d5fea071fd71afcd5ef1e54fc0e94514a8e21621 |
|
08-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: dict_wait() can't really fail |
6cfe560af03491c2ea118e9698a145d8a9ee26b2 |
|
08-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict: Pass through dict_lookup() error from dict server to client |
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. |
09cd60cebc01b2b25ada824f3d9f877d5efd8272 |
|
07-May-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
dict-client: Added idle_msecs=<n> parameter
This can be useful when connected to dict-async server where extra idling
connections don't matter so much as with blocking dict servers. |
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/' |
7fb4bc0355c372419b3957d297b7cb4341bd6b45 |
|
27-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
dict-client: Avoid crash if server disconnects during transaction commit.
Found by Coverity. |
38f51958dc9dc5954c4212c9b370fd42d47197ec |
|
24-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
dict-client: Verify that the correct transaction ID is returned for commit reply. |
2333ef65e41644e9d4fea1f8aef2ee625caf3b00 |
|
23-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
dict-client: Improved broken iterate reply logging. |
9e7a30991415f714b609f650105596371a58216d |
|
23-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
dict-client: If dict iteration was aborted, the rest of the connection state became broken.
We never continued skipping over the rest of the iteration, instead the
iteration replies were treated as replies to the following commands. |
7e74fadc6668d85c2bfd630f215770808d73d1a3 |
|
23-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
dict-client: Catch more invalid protocol replies. |
feac4d832101e7090a134ed4edb16610877c07c7 |
|
23-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
dict-client: Disconnect from server on unexpected errors. |
814bf67459ad405a157af0b8940602024d7fadfe |
|
23-Sep-2015 |
Teemu Huovila <teemu.huovila@dovecot.fi> |
Remove now-unnecessary direct stdlib.h #includes. |
02a0277d897dbf5172937158f3d828f981ff230d |
|
02-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
dict-client: Prefix relative socket paths with base_dir. |
d694b6009574ee6e3cfaee3834cbdbcd431affb0 |
|
02-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Added async API for lookup and iteration. |
4d65df350ee685166eed33602c0dce21f54b16ad |
|
20-Mar-2015 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Fixed crash when transaction failed due to dict server disconnection. |
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. |
29dcd138546179e55e4dbcd3c256ba2fd6726e27 |
|
12-Jun-2013 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Error handling fixes to asynchronous transactions. |
79b0f6ec3e5fde8f878bd85f4a1c3d669af66ebe |
|
22-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Fixed hang if async commit's callback did more dict access.
Specifically this fixes a hang with dict-quota plugin when user didn't exist
and quota was changed before calculating it. |
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. |
b529524e924da0d86f8b7f0fa3c9e3e3f763a9f3 |
|
29-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Abort async transaction commits if client gets disconnected from dict server. |
eca38954bcf972618f6b85932a3690acbd2b673a |
|
13-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
lib-dict: dict_init() now returns error string instead of logging it |
bdd36cfdba3ff66d25570a9ff568d69e1eb543cf |
|
03-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
Renamed network.[ch] to net.[ch].
The function prefixes already started with net_ instead of network_.
And icecap wants to use network.h for other purpose. :) |
10399559650f552a23949772be79eb6a80198c5a |
|
15-Sep-2012 |
Timo Sirainen <tss@iki.fi> |
dict_init() API changed to return int. |
2aed6c2062317d1750f59c5c88e77d9f10967462 |
|
14-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
dict: Implemented dict_append() |
b66d803de86bfb411165b3465b0d9ef64ecfe2a1 |
|
25-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Avoid using (void)s by adding ATTR_NOWARN_UNUSED_RESULT attributes and other ways. |
3785910c303507db5f629684e6dde2cc7f83668e |
|
25-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Added i_stream_get_data_size(). Used it where possible. |
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. |
858aec7b45970da39da96f31272f51d37c8d5e30 |
|
06-Oct-2010 |
Timo Sirainen <tss@iki.fi> |
lib-dict: If connect() to dict socket fails, log an error, but don't die. |
87e603100685f9eb7faf995d2600edd0a578dd0c |
|
21-Sep-2010 |
Timo Sirainen <tss@iki.fi> |
dict client: If connect to server socket fails with EACCES, give better error message. |
fc0c06ee7b1e5c29a3faabd05f40fa0d26785dff |
|
04-Jun-2010 |
Timo Sirainen <tss@iki.fi> |
dict client: Allow connecting to server multiple times in a second.
--HG--
branch : HEAD |
8f079b04c103e073e57fa8b85cf69b14b0260ea4 |
|
02-Jun-2010 |
Timo Sirainen <tss@iki.fi> |
lib-dict: Changed proxy client's idle timeout from 1 second to 0.
--HG--
branch : HEAD |
88bff32714d8f6afacf491e4225ab118a40d7c54 |
|
04-May-2010 |
Timo Sirainen <tss@iki.fi> |
dict proxy client: Don't crash in commit if there is no connection to server.
--HG--
branch : HEAD |
98da0024e7340e036f0aa9371e9400176df18ebf |
|
16-Apr-2010 |
Timo Sirainen <tss@iki.fi> |
dict proxy client: Timeout lookups after 30 s, log warning if lookup takes >5 s.
--HG--
branch : HEAD |
28a311381d783cc06e56f9baf1cb9f25634cbfe4 |
|
16-Apr-2010 |
Timo Sirainen <tss@iki.fi> |
dict proxy: Disconnect from dict server after 1 second of idling.
Reconnecting is pretty cheap and it's not good to have many idling dict
server processes.
--HG--
branch : HEAD |
9261dbf0675204898c6557591c7aa376e23a52b2 |
|
07-Apr-2010 |
Timo Sirainen <tss@iki.fi> |
Started using str_to_*() functions instead of libc's ones.
--HG--
branch : HEAD |
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 |
e4383dc44cc122924e65a533b105fd64bf566ebf |
|
02-Feb-2010 |
Timo Sirainen <tss@iki.fi> |
dict proxy: Iteration failure wasn't passed to dict client.
--HG--
branch : HEAD |
e59faf65ce864fe95dc00f5d52b8323cdbd0608a |
|
25-Jan-2010 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2010.
--HG--
branch : HEAD |
7bafda1813454621e03615e83d55bccfa7cc56bd |
|
04-Dec-2009 |
Timo Sirainen <tss@iki.fi> |
Removed MEMBER() macro. Require C99 style struct initializer.
--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 |
a2d977362a01b38243e4840f15dd4f289a984a58 |
|
26-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
dict proxy client: Don't hang when doing an async commit.
--HG--
branch : HEAD |
03b10bd68ecd2307c7f505ddbdeee2d40a5d1441 |
|
20-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
dict proxy: Handle async commits better.
--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 |
3ab74daf30ed911af6ffdbc7e430f0534050a929 |
|
25-Aug-2008 |
Timo Sirainen <tss@iki.fi> |
Calling dict_iterate_init() multiple times for a dict assert-crashed.
Patch by Bernhard Herzog.
--HG--
branch : HEAD |
492352821bf159636caf5ee80a0ad747243b1ebb |
|
09-Jul-2008 |
Timo Sirainen <tss@iki.fi> |
dict-proxy: Fix error message if remote disconnects.
--HG--
branch : HEAD |
74054d9e81a8447cee6049268f3cfd8d8a5d4d59 |
|
08-Jul-2008 |
Timo Sirainen <tss@iki.fi> |
Set dict proxy istream nonblocking so EINTR (^C) won't crash.
--HG--
branch : HEAD |
b2f6edafd29adf76c000bb95d74904de3567dc86 |
|
15-Mar-2008 |
Timo Sirainen <tss@iki.fi> |
Reverted last error handling change, it can't happen after all.
--HG--
branch : HEAD |
f168711503cff645ca2792e1b2dbccfe3b350b43 |
|
15-Mar-2008 |
Timo Sirainen <tss@iki.fi> |
Error handling fix
--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 |
0b15bc85459ef4fea30ac1f8903af48dd6d5f8e2 |
|
21-Dec-2007 |
Timo Sirainen <tss@iki.fi> |
Don't try to reconnect more often than once/sec.
--HG--
branch : HEAD |
2742a065b3a7b29a3369ae09021ef0b19aa85121 |
|
21-Dec-2007 |
Timo Sirainen <tss@iki.fi> |
Delay connecting to dict proxy until it's needed. Fixed also reconnecting.
--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 |
95dda3edde8327398ab4ec0b444bbc07b5cf1121 |
|
01-Oct-2007 |
Timo Sirainen <tss@iki.fi> |
Error handling fix
--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 |
2526d52441ef368215ab6bf04fd0356d3b09d235 |
|
02-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Renamed i_stream_create_file() to i_stream_create_fd().
--HG--
branch : HEAD |
93fa87cf1a96c4f279ec4f5c311820313ba12c34 |
|
02-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Split o_stream_create_file() to _create_fd() and _create_fd_file().
--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 |
dd2053135901c770b80745869d9200b491773dc4 |
|
31-Jul-2006 |
Timo Sirainen <tss@iki.fi> |
dict proxy: Dictionary iteration was broken.
--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 |
4210fac11e936f7edd6f3deecd1b23466534ce6a |
|
30-Jul-2006 |
Timo Sirainen <tss@iki.fi> |
Delay sending the transaction begin command to server until the first
modification is actually done. If no modifications are done, there's no need
for commit/rollback command either.
--HG--
branch : HEAD |
e080054d7df103a9b6be62a476cbee18261acf6c |
|
16-Jun-2006 |
Timo Sirainen <tss@iki.fi> |
Fixes
--HG--
branch : HEAD |
684cbcce30cc97340ee43240de5c0d236c917d29 |
|
15-Jun-2006 |
Timo Sirainen <tss@iki.fi> |
Fixes to dict proxy
--HG--
branch : HEAD |
2cce739962447b3ab8e487284641d2464ce50cf0 |
|
15-Jun-2006 |
Timo Sirainen <tss@iki.fi> |
t_pop() calls were missing from some error handling paths
--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 |
a1295ce772f4765320a11a572595ce8eff37c343 |
|
07-Feb-2006 |
Timo Sirainen <tss@iki.fi> |
LF wasn't sent at the end of all commands.
--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 |
7bf6a25a58184d3ff4714d76a402d61a0cca2c52 |
|
13-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Small (compiling) fixes
--HG--
branch : HEAD |
8d5b2e70385a90b5e112a5928b2e81837730a031 |
|
11-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Fixes to dict proxy.
--HG--
branch : HEAD |
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6 |
|
31-Dec-2005 |
Timo Sirainen <tss@iki.fi> |
Forgot to add
--HG--
branch : HEAD |