Fork of isync with filter support
Go to file
Oswald Buddenhagen 463272eab8 CVE-2021-3657: reject excessively large IMAP literals
we didn't limit the 32-bit size of literals so far, which, given that we
use int-sized lengths & offsets, permitted all kinds of buffer
overflows. malicious/compromised servers may have been able to exploit
this. actual email senders would be constrained by size limits for
delivered mails, and to cause more than a crash they'd have to predict
the exact size of the final message.

we now limit to 2GB, which, given that we use unsigned ints since
e2d3b4d55 (v1.4.0), gives the handlers downstream plenty of headroom.

an alternative would have been using 64-bit offsets, but this seems like
major overkill, even if IMAP4rev2 recently mandated it (we talk only
IMAP4rev1, so we can ignore it).
2021-12-01 10:07:24 +01:00
debian delete the compat wrapper 2017-10-01 15:30:07 +02:00
src CVE-2021-3657: reject excessively large IMAP literals 2021-12-01 10:07:24 +01:00
.gitignore git-ignore tar ball signatures 2017-10-07 16:03:50 +02:00
acinclude.m4 update fsf's postal address. i think it's sort of useless nowadays 2006-02-09 17:44:22 +00:00
AUTHORS reshuffle for "contact priority's" sake 2008-02-23 08:53:39 +00:00
autogen.sh use autoreconf instead of calling separate tools 2013-12-01 13:36:26 +01:00
configure.ac bump version 2021-07-29 13:14:24 +02:00
COPYING added missing files 2000-12-20 22:00:25 +00:00
isync.spec.in purge vestiges of the compat wrapper 2019-08-30 13:13:30 +02:00
Makefile.am give the coverity build result archive a more descriptive name 2020-08-04 14:49:57 +02:00
mbsync-get-cert rename get-cert => mbsync-get-cert 2017-10-01 10:46:06 +02:00
NEWS create placeholders for messages over MaxSize 2020-08-04 17:16:03 +02:00
README Merge branch '1.3' 2020-07-08 12:51:20 +02:00
TODO create placeholders for messages over MaxSize 2020-08-04 17:16:03 +02:00

 _                      
(_)___ _   _ _ __   ___ 
| / __| | | | '_ \ / __|
| \__ \ |_| | | | | (__ 
|_|___/\__, |_| |_|\___|
       |___/            
isync/mbsync - free (GPL) mailbox synchronization program
http://isync.sf.net/

See AUTHORS for contact information.

``mbsync'' is a command line application which synchronizes mailboxes;
currently Maildir and IMAP4 mailboxes are supported. New messages, message
deletions and flag changes can be propagated both ways.
``mbsync'' is suitable for use in IMAP-disconnected mode.

Synchronization is based on unique message identifiers (UIDs), so
no identification conflicts can occur (unlike with some other mail
synchronizers).
Synchronization state is kept in one local text file per mailbox pair;
these files are protected against concurrent ``mbsync'' processes.
Mailboxes can be safely modified while ``mbsync'' operates.
Multiple replicas of each mailbox can be maintained.

isync is the project name, while mbsync is the current executable name; this
change was necessary because of massive changes in the user interface.

* Features

    * Fine-grained selection of synchronization operations to perform
    * Synchronizes single mailboxes or entire mailbox collections
    * Partial mirrors possible: keep only the latest messages locally
    * Trash functionality: backup messages before removing them
    * IMAP features:
	* Supports TLS/SSL via imaps: (port 993) and STARTTLS
	* Supports SASL for authentication
	* Pipelining for maximum speed

* Compatibility

    isync should work fairly well with any IMAP4 compliant server;
    servers that support the UIDPLUS and LITERAL+ extensions are most
    efficient.

    Courier 1.4.3 is known to be buggy, version 1.7.3 works fine.

    M$ Exchange (2013 at least) needs DisableExtension MOVE to be compatible
    with the Trash functionality.

* Platforms

    At some point, ``isync'' has successfully run on:
    Linux, Solaris 2.7, OpenBSD 2.8, FreeBSD 4.3.

* Requirements

    perl v5.14+
    Berkeley DB 4.1+ (optional)
    OpenSSL for TLS/SSL support (optional)
    Cyrus SASL (optional)
    zlib (optional)

  The build from git also requires:

    GNU autotools (autoconf & automake)
    perl module Date::Parse (libtimedate-perl on Debian, perl-TimeDate on
                             Fedora and Suse)

* Installation

    ./autogen.sh (only when building from git)
    ./configure
    make
    sudo make install

* Help

    Please see the man page for complete documentation.