This finally adds support to validate SSL connections using trusted CA certificates installed in the system, usually in /etc/ssl/certs. So the user doesn't have to manually accept and store certificates for most IMAP servers.
The IMAP protocol limits all searching to be case-insensitive, so only the match_*() can do case-sensitive searching, since they do the matching locally.
This option makes it possible to change the behavior of the enter_idle(), so it returns with any event received from the server. Also, the enter_idle() method now returns a second value, which indicated the event that caused it to return.
The serial number of the certificates is checked together with the issuer, since some certificates have the same subject and issuer but a different serial number. Also, the certificate subject, issuer and serial number are also written to the certificates file just before the certificate itself, in order to make it easier to distinguish each certificate in the file.
At least one server, returns a continuation response to the APPEND request, even if the APPEND request then finally fails (because the mailbox doesn't exist). Anticipate such an occurrence, and try to create the mailbox and retry the APPEND, as is done normally.
A new custom implementation of international mailbox names has replaced the previous iconv-based solution.