main
global: Include fuzzer dict files in dist
COPYING: Simplify and standardize copyright handling
lib-*: Add libFuzzer dictionaries for the fuzz targets
lib-mail: Added mail-html2text API What makes it mail-specific is that it allows skipping over data inside <blockquote>. This code probably doesn't parse HTML perfectly, but hopefully good enough for HTML emails.
global: Use UOFF_T_MAX instead of (uoff_t)-1
lib: istream - Make istreams declare the istreams they read
lib-mail: Clarify istream-attachment-extractor's error handling API usage.
Added istream-binary-converter to convert binary MIME parts to base64.
lib-mail: i_stream_create_dot() - Replace boolean send_last_lf with enumerated flags
global: Change CALLBACK_TYPECHECK() to used with subtraction
lib-mail: Add qp encoder
lib-mail, fts: Put application/xhtml+xml MIME parts through html parser as well.
Moved GUID code to liblib. Use guid_128_t type consistently everywhere.
mbox_from_parse() now returns also the parsed timezone.
lib-mail: Add message_address_parse_full() and struct message_address_list
imap: URLFETCH BINARY BODYPARTSTRUCTURE returns binary-decoded line counts.
Avoid using shadow variables. Unfortunately -Wshadow also complains about index variable conflicting with index(), which is used in way too many places to change.
lib-mail: message-decoder - Add flag to skip RFC 2047 decoding for address headers
Replaced "decomposed titlecase" conversions with more generic normalizer function. Plugins can now change mail_user.default_normalizer. Specific searches can also use different normalizers by changing mail_search_context.normalizer.
lib-mail: message-header-encode - Update function descriptions.
lib-mail: message_header_hash() - add v4 that strips tabs
global: Fix whitespace
Changed .h ifdef/defines to use <NAME>_H format.
lib-mail: message-parser - Check both dashes of the epilogue boundary
lib-mail: message-parser - Limit headers total count to 50MB by default
lib-mail: Make message_part_is_attachment() part parameter const
lib-mail: message-part-serialize - Enforce message part offset consistency
global: Fix spelling
lib-mail: message_search_msg() passes through message_parser_deinit_from_parts()'s error string
lib-mail: message_skip_virtual() - Fix handling plain CRs in message body
lib-mail: Added message_snippet_generate() to produce a short text snippet of a mail.
lib-mail: ostream-dot API changes The dot-line sending is now done when o_stream_flush() is called. This should be used instead of relying on close() doing it, because it still needs to write a few bytes and there are no guarantees that the parent stream allows sending them.
lib-mail: Added qp-decoder, which is a rewritten quoted_printable_decode() The main benefit is that qp-decoder allows feeding data to it in smaller pieces. It can also give better error reporting.
lib-mail: Removed quoted_printable_decode*() quoted_printable_q_decode() was still left in quoted-printable.h, but maybe it should be moved to qp-decoder.c as well.
lib-mail: Change NUL -> 0x80 replacement to use unicode replacement char instead
lib-mail: rfc822-parser - Remove rfc822_decode_punycode()
global: Drop TIME_T_SIGNED define
lib-mail: test-rfc822-parser - Consolidate domain tests in one test function