bcb4e51a409d94ae670de96afb8483a4f7855294 |
|
01-Jan-2018 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2018. |
ebcf7d6c9222f2c96053516e0c90994bff62dd55 |
|
07-Nov-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Replace ssl_iostream_context_init_client() with ssl_iostream_client_context_cache_get() |
15d19d6e4daf460d8d2c82b981e23996dbdf7ba5 |
|
07-Nov-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Rename ssl_iostream_context_deinit() to ssl_iostream_context_unref() |
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); |
3b7427fca4b403ad87bafc668e23cbb0a15fc975 |
|
08-Aug-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-imap-client: Support sending IMAP ID command including unique x-session-ext-id |
a345bc2d9fbad3d48ea124285e85d574698eeb96 |
|
12-Jun-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-imap-client: Fix hang when imapc_client_get_capabilities() is called without connection |
651630fe2c92b696197ca7558925153d891997ed |
|
19-May-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-imap-client: Change server IP only on connect() failures
Also log an warning-level message about it. This is mainly useful to see
that a slow connection could be caused by a connect() timeout. Since more
IPs are still available, it's not yet an error. |
78aafd062427cb22e9cf57ff08ced5b08baf55b3 |
|
19-May-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
imapc: Fix infinite reconnection when server keeps sending corrupted state
When corrupted state was found, imapc_client_mailbox_reconnect() is called
to reconnect. This call skipped the normal "is it safe to reconnect?"
checks causing potentially infinite reconnections. |
a0adfb2fe803a4ff6205878ffa637026ff4d1137 |
|
01-May-2017 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
lib-imap-client: Fixed NULL check in assertion to be proper boolean.
Found using Clang -Wstrict-bool. |
654c60f1741fd195878d74a30df90bf130649d64 |
|
25-Apr-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
quota: Add imapc backend
This allows using imapc storage with imapc quota. The quota acts as
read-only, so it's used only when the current quota usage is explicitly
asked.
The quota can be looked up using either a mailbox name or quota root name.
By default INBOX's quota is looked up. If there are multiple quota roots
returned for the mailbox, only the first quota root returned by the
QUOTAROOT reply is used. |
a9e0cd4b1182d5afdd7e6e4be3346ab1f245d609 |
|
24-Apr-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-imap-client: Fix imapc_client_get_capabilities() when called without connections |
e00612b245b41cc47a5c6214794c415aaa8c91b7 |
|
24-Apr-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
imapc: Make sure client is logged in when checking capabilities
Especially with imapc_features=delay-login the capability could have been
looked at before the client was even connected. |
bac4b1dc3aa56cda1c9d4fdd7e673b94e5c559a9 |
|
10-Apr-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-imap-client: Add unit test
Initially this tests some connection and reconnection problems. |
cda5d635049991ef56b5096e29c4da8dc3c51c96 |
|
10-Apr-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-imap-client: Make command tag counter externally accessible
This allows unit tests to reset it. |
f3e5f802fac1c2047e46b44b856116cca1cbf5df |
|
10-Apr-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-imap-client: Call the public login callback exactly once.
Previously it was also called only once, as long as there were only a single
imap connection. (The current imapc code wouldn't create more than one
connection.) It was a bit confusing what the expectation was, so now the
callback is never called more than once. |
7b29303efbb43e4e85715a228eb41c2a14300902 |
|
10-Apr-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-imap-client: imapc_client_deinit() didn't set client=NULL |
4727aef38f51e62e27b4f2c1b77fb5438ad5e733 |
|
10-Apr-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-imap-client: Change connect_retry_interval_secs to _msecs
This allows caller to provide better precision. |
276c62e4538faf5bf3ae127a7b7c246c5d37add2 |
|
05-Apr-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
global: Fix imapc_client_login usage |
dc2bbf10739ab8b4ed2a18f6ee5756d5dd00a870 |
|
05-Apr-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-imap-client: Add login_callback setter
This way it can be set before actually calling login
which might happen some time later. |
42989c2732c3531d914463ca8bb4a051e0dbd034 |
|
03-Apr-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-imap-client: Only LOGOUT from connected connections |
c515f5c969f7a3a5b525ab15bde2f116cbe932de |
|
03-Apr-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-imap-client: Make retry count and interval configurable |
eae7a1783444e80721efbb853738c4aadc6b5eae |
|
03-Apr-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
lib-imap-client: Add imapc_client_try_stop |
d35da39e688b94bb7e9adc6c865a45004c64a506 |
|
19-Mar-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
imapc: Use LOGOUT to cleanly disconnect from server.
This makes it clearer in the remote server's logs whether the disconnection
was intentional or not.
Use a hardcoded 5 second timeout for LOGOUT. It should be enough time for
the server to finish sending the tagged reply. |
b3c095d1fb0bb86695d92c2045eb09e985623934 |
|
22-Feb-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
global: Fix ssl_set usage
Remove verify_remote_cert, as it's always TRUE now.
Set allow_invalid_cert to TRUE if verification is
not required. |
e883e4406713e4cd6a3c98029cee00c537415f17 |
|
15-Feb-2017 |
Josef 'Jeff' Sipek <jeff.sipek@dovecot.fi> |
lib-imap-client: add callback to notify consumers about state changes
Add a callback to notify imapc users about failures. Currently, the only
failure defined is "authentication failed". |
3b94c8fb6952f5c0f284bd65fb1cb11bb1fe2e63 |
|
13-Jan-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
imapc: Fix re-sending retryable commands after reconnect |
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 |
c23ebb9b0e0b760ca8da16fde34ff33f5ece5e07 |
|
06-Oct-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
imapc: Added imapc_max_line_length to limit maximum memory usage.
The default is still unlimited, but this should be set to something smaller
for untrusted servers. |
b60daa2dcb94b129a25ab5b42a2c6b6748c781aa |
|
12-Apr-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
imapc: Prepare for non-mailbox command retrying: Set reconnect_command_count earlier
This probably doesn't fix itself anything yet, but is needed for the
following changes. |
5ba8e641e1cfe122af4830c82da446bfb41e9946 |
|
12-Apr-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
imapc: Code cleanup - imapc_connection_reconnect() is now always called when reconnect is ok. |
e82efb347c91c199218e41065c2acb3464247b1a |
|
05-Apr-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
imapc: If we get disconnected during SELECT/EXAMINE, retry it once.
This seems to be happening especially with dsync migrations from IMAP
servers with small timeouts. The initial dsync run opens imapc connection
early to do a LIST + SELECT the first mailbox, but then dsync may spend a
while creating all the local mailboxes before it continues using the imapc
connection. |
bd06c77a12bb02871b25dceb749fa955f4a272ff |
|
16-Jan-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
imapc: Added support for PROXYAUTH command by setting imapc_features = proxyauth
This can be useful when talking to Sun/Oracle IMAP server, which wants you
to use LOGIN+PROXYAUTH to perform master user logins, instead of supporting
the standard SASL PLAIN authentication. |
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/' |
46b823ac3bce2c0f9f0fc73911e48d3a77b04fbe |
|
08-Sep-2015 |
Timo Sirainen <tss@iki.fi> |
Replaced unlink() calls with i_unlink*() wherever possible. |
639ba5ff2ba668b41b8a8102ce626d0b58d384ad |
|
25-Aug-2015 |
Timo Sirainen <tss@iki.fi> |
lib-imap-client: Allow reconnecting to IMAP server even if there had been no idle moments. |
45a3ea3347dd42fccc84a3efafb6331e7baeb404 |
|
23-Apr-2015 |
Timo Sirainen <tss@iki.fi> |
imapc: Don't write SEARCH YOUNGER/OLDER queries if server doesn't support WITHIN extension |
051c44cfe0f79b7c7b4d057fc7d3e071591f9659 |
|
13-Mar-2015 |
Timo Sirainen <tss@iki.fi> |
lib-imap-client: If we get disconnected and reconnect, log it as warning instead of as error. |
de26c21cfadf24c1fa59f06414854d58b3d8baad |
|
11-Mar-2015 |
Timo Sirainen <tss@iki.fi> |
imapc: Added throttling settings to imapc_features=throttle:a:b:c
This change could be reverted once good settings are found. |
6e1cac3defe84a222b804f3ef41ff558e1a86391 |
|
03-Feb-2015 |
Timo Sirainen <tss@iki.fi> |
imapc: Added imapc_features=search support for sending SEARCH commands.
Currently requires the remote server to support ESEARCH (but this would be
easy to avoid). This is only minimally tested for now, so bugs may exist
(especially related to sub-queries). |
c6033074ada5c7441ff7bb12c4b433cae737fea2 |
|
08-Jan-2015 |
Timo Sirainen <tss@iki.fi> |
imapc: Added imapc_sasl_mechanisms setting
The first supported SASL mechanism is used, otherwise the login fails
entirely. |
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> |
48325adac125d7ff275ec69b05b7a92be9637630 |
|
13-Jun-2014 |
Timo Sirainen <tss@iki.fi> |
Added various asserts to try to silence Coverity false positives. |
a8c5a86d183db25a57bf193c06b41e092ec2e151 |
|
04-Feb-2014 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2014. |
c12ee3424b82fea9eed2c80f54fbca01850af627 |
|
17-Nov-2013 |
Timo Sirainen <tss@iki.fi> |
imapc: Avoid sending unnecessary IDLEs that are immediately aborted. |
35f3b7e05afecacd0332c210c6e253911c2813d8 |
|
16-Nov-2013 |
Timo Sirainen <tss@iki.fi> |
Use io_loop_set_current() instead of directly setting it. |
9a7f22e2c14b507e6044e5534df978a0c3b638d0 |
|
19-Sep-2013 |
Timo Sirainen <tss@iki.fi> |
imapc: Abort pending commands before any deinitialization to avoid crashes. |
719e8f8c67bdf3f70695a26885f68e13a6ac0297 |
|
06-Jun-2013 |
Timo Sirainen <tss@iki.fi> |
lib-imap-client: Added support for UNSELECT capability. |
9f3b630d62d70fc0a06a07b85d9e66116fd444a8 |
|
31-May-2013 |
Timo Sirainen <tss@iki.fi> |
lib-imap-client: Connect and command timeouts are now configurable.
Also use the same connect timeout for the DNS lookup's timeout. |
56d1345c43bbd28c36b7faa85e4163bd9e874290 |
|
07-Apr-2013 |
Timo Sirainen <tss@iki.fi> |
Added ssl_client_ca_file to specify the CA certs as a file instead of as a dir.
This is required for Redhat-based systems where there isn't a CA directory
like in Debian/Ubuntu. |
ba1c847d0af4afe4787ed470d0c818e948e184e2 |
|
04-Apr-2013 |
Timo Sirainen <tss@iki.fi> |
lib-ssl-iostream: API changes to return error strings if init() functions fail.
This also fixed a couple of broken error handlings. |
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. |
e5d809128c61f4503b394e7fe48165afa052b18b |
|
03-Sep-2012 |
Timo Sirainen <tss@iki.fi> |
lib-imap-client: Added support for NAMESPACE capability
Required by previous imapc commit |
bd389fdd3968a000bc7e2df3c83e8338740faa73 |
|
28-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
imapc: max_idle_time setting didn't actually work. |
b09f510e3f7e3bd4a5216a60fa1406d1e83d001b |
|
31-Jul-2012 |
Timo Sirainen <tss@iki.fi> |
imapc: Fixed crashes during mailbox close. |
4307c886579381dbb1897ea1388ae6978c96f560 |
|
27-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Changed i_close_fd() API to set the fd to -1 after closing. |
cb78bd2ad54e402c1f53930b41e2295683bda90b |
|
25-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Replaced (void)close(fd) and close_keep_errno() with i_close_fd().
i_close_fd() preserves the errno and logs an error if the close() fails. |
5f5870385cff47efd2f58e7892f251cf13761528 |
|
12-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2012. |
b988298ba20a09e06588f91cece5e302cab81454 |
|
09-Jan-2012 |
Timo Sirainen <tss@iki.fi> |
imapc: Treat master_user="" the same as NULL. |
3ed38c6e054b7ffebd024df77f1f5ad1042d3505 |
|
14-Dec-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Try to avoid crashes on deinit/disconnection. |
afa672e8be526567d29c7eccf4bf95d63a4a749c |
|
12-Dec-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Added X-GM-EXT-1 and CONDSTORE to capabilities. |
11bbebd9f9a8043365e87a621a263749e93334bd |
|
24-Nov-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Pass ssl_crypto_device setting to lib-ssl-iostream. |
05b24d0011d82687674c8545db1217b4f9f327b7 |
|
20-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Fixed reopening a mailbox. |
35779754964119c94b919b75bbf1ccc1c02aad52 |
|
17-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Added imapc_ssl_verify setting. |
019ae3c13b4ec19d0448674d014787ef27556e98 |
|
09-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: When asking for capabilities, try to ask from a logged in connection. |
f87844c400cf9741abad57d9815121d0738a738f |
|
09-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Support retrying some IMAP commands if we get disconnected. |
edcd6f7223568e080d5a6767c5038e3bc891e963 |
|
09-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Initial support for automatically reconnecting to remote server. |
f084de14d7e975d4dfbcdfca4301312328720c8a |
|
07-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Removed unused "stop now" functionality. |
fb37a9b7bb71807a394e3ecdb74511f32a79c39b |
|
07-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Changed mailbox opening API to be more extensible. |
81d3c215bb1fdbda2cf7ccd9519f6b4fd03c3791 |
|
07-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Command sending API changed to be more extensible. |
cdf00df4dc5d0ae5acfdf200d2e846dbb92fda7e |
|
01-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
imapc: Changed imapc_client_mailbox_cmd() parameter order to be same as in _cmdf(). |
5035404202587543bb4843d4aec46331651b6e16 |
|
26-Sep-2011 |
Timo Sirainen <tss@iki.fi> |
Moved imapc-client into its own lib-imap-client library. |