aboutsummaryrefslogtreecommitdiffstats
path: root/Changelog
Commit message (Collapse)AuthorAgeFiles
* interimap: fail when two non-INBOX LIST replies return different separators.Guilhem Moulin2019-05-271
| | | | | | This never happens for a single LIST command, but may happen if mailboxes from different namespaces are being listed. The workaround here is to run a new interimap instance for each namespace.
* interimap: accept C-style escape sequences in 'list-mailbox'.Guilhem Moulin2019-05-271
| | | | | This is useful for defining names containing control characters (incl. \0 for unspecified hierarchy delimiter).
* interimap: Factor out error throwing.Guilhem Moulin2019-05-271
| | | | Also, write which --target to use in --delete command suggestions.
* libinterimap: astring is 1*ASTRING-CHAR / string.Guilhem Moulin2019-05-271
| | | | | | | | | | | | | | | Not 1*ATOM-CHAR / string. Also accept LIST responses mailbox names containing '%', '*', or ']'. From RFC 3501: astring = 1*ASTRING-CHAR / string ASTRING-CHAR = ATOM-CHAR / resp-specials list = "LIST" SP mailbox SP list-mailbox list-mailbox = 1*list-char / string list-char = ATOM-CHAR / list-wildcards / resp-specials list-wildcards = "%" / "*" resp-specials = "]"
* libinterimap: quote() the empty string as "" instead of a 0-length literal.Guilhem Moulin2019-05-271
| | | | | Compression asside, this saves 3 bytes and one round-trip on servers not supporting non-synchronizing literals, and 4 bytes otherwise.
* libinterimap: bugfix: fix escaped hierarchy delimiters in LIST reponses.Guilhem Moulin2019-05-271
| | | | | The were returned as escaped quoted specials, like "\\", not as a single character (backslash in this case).
* Prepare new release.upstream/0.4Guilhem Moulin2019-01-221
|
* Change e-mail address.Guilhem Moulin2019-01-221
|
* Net::IMAP::InterIMAP: add support for TLSv1.3 (on recent enough Net::SSLeay).Guilhem Moulin2019-01-221
| | | | | | | Also, change "SSL_protocols" default value from "!SSLv2 !SSLv3" to "!SSLv2 !SSLv3 !TLSv1 !TLSv1.1". I.e., only enable TLSv1.2 and later, which is the default in Debian's OpenSSL as of 1.1.1-2, cf. https://tracker.debian.org/news/998835/accepted-openssl-111-2-source-into-unstable/ .
* pullimap, interimap: don't autocreate statefile or database in long-lived mode.Guilhem Moulin2019-01-211
|
* interimap.service: use --watch=60 rather than --notify.Guilhem Moulin2019-01-201
|
* Specify minimum Perl and Net::SSLeay versions.Guilhem Moulin2019-01-201
|
* pullimap, interimap: Use $XDG_CONFIG_HOME/$NAME/config as config file.Guilhem Moulin2019-01-201
|
* pullimap: use extended SEARCH (RFC 4731) when availableGuilhem Moulin2018-05-101
|
* Improve wording.Guilhem Moulin2018-05-091
|
* Add support for untagged ESEARCH responses from RFC 4731.Guilhem Moulin2018-05-091
|
* Library: new API idle_start() and idle_stop().Guilhem Moulin2018-05-091
|
* Fix manpage generation with pandoc >=2.1Guilhem Moulin2018-04-261
|
* Add missing changelog entry.Guilhem Moulin2017-07-291
|
* Ensure the lower bound of UID ranges is at least 1.Guilhem Moulin2017-05-291
|
* pullimap: replace non RFC 5321-compliant envelope sender addresses by <>.Guilhem Moulin2016-12-061
|
* Update changelog.Guilhem Moulin2016-12-011
|
* pullimap: add a manpage and a configuration file.Guilhem Moulin2016-03-071
|
* Add an option 'SSL_protocols'.Guilhem Moulin2015-10-191
|
* Fix byte count for compression streams.Guilhem Moulin2015-10-061
|
* Bump version number.Guilhem Moulin2015-09-281
|
* Display source UIDs upon APPEND.upstream/0.2Guilhem Moulin2015-09-221
|
* Bug fix: don't delete the lockfile if another instance of interimap is running.Guilhem Moulin2015-09-221
|
* Use TCP keepalive to detect dead peers.Guilhem Moulin2015-09-211
|
* Display the certificate chain, SSL protocol and cipher in debug mode.Guilhem Moulin2015-09-161
|
* Set X.509 certificate purpose to 'SSL Server' for SSL_verify=YES.Guilhem Moulin2015-09-161
|
* Don't set SO_KEEPALIVE on the socket.Guilhem Moulin2015-09-151
| | | | | This is most likely useless in our case since the TCP keepalive time is usually much higher than the IMAP timeout.
* Remove support for the Binary Content extension [RFC3516].Guilhem Moulin2015-09-151
| | | | | | | | | | | | | “If the server does not know how to decode the section's CTE, it MUST fail the request and issue a "NO" response that contains the "UNKNOWN-CTE" extended response code.” — [RFC3516 section 4.3] Unfortunately the client doesn't know which message couldn't be decoded, so it can't fallback and use BODY instead. This made ‘use-binary=NO’ pretty much mandatory. Hence we remove support for BINARY [RFC3516]. Instead, we increase the thresold for when to add Zlib full flush points from 4096 to the buffer size (32768).
* Don't catch SIGHUP as it only work during IDLE.Guilhem Moulin2015-09-151
| | | | | Sending any signal while some mails are being copied interrupts the syscall (eg, write) and attempting to resume crashes interimap.
* Add the ability to proxy TCP connections through a SOCKSv5 proxy.Guilhem Moulin2015-09-151
|
* Replace IO::Socket::INET dependency by the lower lever Socket to enable IPv6.Guilhem Moulin2015-09-151
|
* Accept non-fully qualified commands.Guilhem Moulin2015-09-141
|
* Replace IO::Socket::SSL dependency by the lower level Net::SSLeay.Guilhem Moulin2015-09-131
| | | | | | | | | | | | Also, * Rename the 'SSL_verify_trusted_peer', 'SSL_ca_path', and 'SSL_cipher_list' options to 'SSL_CApath', 'SSL_verify' and 'SSL_cipherlist', respectively. * Add an option 'SSL_CAfile' to specify a file containing trusted certificates to use during server certificate authentication. * Replace Compress::Zlib dependency by the lower level Compress::Raw::Zlib.
* Factor the SSL code (imaps and STARTTLS).Guilhem Moulin2015-09-111
| | | | | | | | Also, add SSL options SINGLE_ECDH_USE, SINGLE_DH_USE, NO_SSLv2, NO_SSLv3 and NO_COMPRESSION to the compiled-in CTX options. And use SSL_MODE_AUTO_RETRY to avoid SSL_read failures during a handshake.
* Print IMAP traffic stats when receiving a SIGHUP.Guilhem Moulin2015-09-101
|
* Exit with return value 0 when receiving a TERM signal.Guilhem Moulin2015-09-091
|
* Add support for the Binary Content extension [RFC3516].Guilhem Moulin2015-09-091
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unfortunately as of Debian Wheezy it doesn't work for Dovecot with COMPRESS=DEFLATE [RFC4978] and non-synchronizing literals. perl -e 'use Compress::Raw::Zlib; print "a COMPRESS DEFLATE\r\n"; sleep 1; my $d = new Compress::Raw::Zlib::Deflate( -WindowBits => -15 ); $d->deflate("b APPEND TRASH ~{1+}\r\nx\r\n", my $buf); print $buf; $d->flush($buf, Z_SYNC_FLUSH); print $buf; sleep 1; ' | /usr/lib/dovecot/imap imap(guilhem): Panic: stream doesn't support seeking backwards Interestingly, it works just fine for non-binary literals: perl -e 'use Compress::Raw::Zlib; print "a COMPRESS DEFLATE\r\n"; sleep 1; my $d = new Compress::Raw::Zlib::Deflate( -WindowBits => -15 ); $d->deflate("b APPEND TRASH {1+}\r\nx\r\n", my $buf); print $buf; $d->flush($buf, Z_SYNC_FLUSH); print $buf; sleep 1; ' | /usr/lib/dovecot/imap However I can't reproduce the problem Dovecot 2.2.18 and Debian Sid (but it doesn't help to install Dovecot from testing to my Wheezy box.)
* Add a configuration option 'null-stderr=YES'.Guilhem Moulin2015-09-091
| | | | To send STDERR to /dev/null for type=tunnel.
* Add support for the IMAP COMPRESS extension [RFC4978].Guilhem Moulin2015-09-091
| | | | | Also, add traffic statistics after closing the connection to the IMAP server.
* Rename ‘imapsync’ to ‘interimap’.Guilhem Moulin2015-09-071
| | | | To avoid confusion with http://imapsync.lamiral.info .
* First attempt.Guilhem Moulin2015-07-231