head 1.1; access; symbols; locks; strict; comment @ * @; 1.1 date 2026.05.14.13.15.14; author ktnb; state Exp; branches; next ; commitid Fk7wJzyS5N6ZEMFG; desc @@ 1.1 log @isync: update to 1.5.1 1.5.1 (2025-03-11) ================== Improvements: - mbsync-get-cert now supports STARTTLS; new option -s - Zero-sized messages from IMAP Stores are now accepted - UIDVALIDITY change recovery is now attempted even if both sides of the Channel are affected - The sync summary at the end is more concise again - Cosmetic improvements to some console output Bug Fixes: - Fixed IMAP INBOX not being properly recognized with some servers - Fixed Maildir INBOX nested into Path not being implicitly listed - Fixed crash when resuming message propagation with MaxMessages - Fixed --list-stores hanging after synchronous error - Fixed --dry-run without --debug-driver not being really dry - Fixed building from pristine git clones - Fixed building from shallow git clones 1.5.0 (2024-08-02) ================== Compatibility Concerns: - The reference point for relative local paths in the configuration file is now the file's containing directory - Maildir Path cannot be nested into Inbox anymore (this was never documented) - Renamed the ReNew/--renew/-N options to Upgrade/--upgrade/-u and Delete/--delete/-d to Gone/--gone/-g - Superseded SSLVersions option with TLSVersions, and disabled TLS v1.0 and v1.1 by default - Renamed SSLType option to TLSType - Placeholders will be now created for messages exceeding MaxSize even if they are flagged on the source side - Placeholder upgrades no longer pull flag updates along unless also requested - New messages which we are about to expunge from the source side are not propaged any more even if the target side would keep them - Tunnel is now consistently assumed to be secure, so some warnings are gone New Features: - Changed default config & state locations to follow the XDG basedir spec; the old locations remain supported - Added support for IMAP mailbox names with non-ASCII characters - Added support for Maildir Paths with suffixes (not ending with a slash) - Made the Channel side to expire with MaxMessages configurable - MaxMessages and MaxSize can be used together now - The unfiltered list of mailboxes in each Store can be printed now - A proper summary is now printed prior to exiting. This includes expunges, which are now included in the progress as well. - Added support for mirroring deletions more accurately; option ExpungeSolo - Added new sync operation 'Old' to retry previously skipped messages - Added --ext-exit option to indicate with the exit code whether Stores were modified - Added --dry-run option Improvements: - Added support for the LITERAL- IMAP extension, which improves upload performance with f.ex. GMail somewhat - Improved error handling when attempting to store too big messages on f.ex. GMail - Malformed messages with incomplete headers will be propagated now - A notice is now emitted if the server does not support race-free Trash - Improved checking for invalid command lines - Options not supported due to the build configuration are still recognized now, to make error messages more helpful - The progress indicator is rate-limited now - Various improvements to the debugging output - Vastly extended the autotest suite Bug Fixes: - Worked around "unexpected EOF" error messages at end of TLS connections; affects f.ex. GMail - Worked around protocol corruption issue with iCloud (mail.me.com) - Fixed missing CAPABILITY command after logging in if the server does not report updated capabilities automatically (affects f.ex. MS Exchange) - Fixed CopyArrivalDate failing on some date strings - Fixed propagation of new messages to non-UIDPLUS servers - Fixed Timeout being ignored by DNS host resolution - Fixed broken Tunnel potentially causing SIGPIPE - Fixed Tunnel leaving behind zombie processes - Fixed expunges not being propagated at all if the first run after they occurred did not include --delete - Fixed MaxMessages being exceeded when only --new was used - Fixed messages being instantly expired despite being important when only --new was used - Trash-ing failures now prevent expunging and cause a non-zero exit code - Fixed placeholders being needlessly trashed - Fixed TrashNewOnly and TrashRemoteNew omitting messages for which only a placeholder was synced - Fixed TrashRemoteNew omitting messages which exceed MaxSize - Fixed TrashRemoteNew not using race-free expunge - Optimized some places with unnecessarily high CPU usage - Fixed unnecessary network usage by non-selective uni-directional syncs when no placeholders are present - Fixed crash when Patterns yields nothing when built with new compilers - Fixed crash when all flag propagations to a mailbox failed - Fixed handling of errors during opening mailboxes - Removed useless "lost track of ... messages" warnings when resuming after an interruption - Fixed many minor bugs in corner cases, mostly when resuming after interruptions 1.4.4 (2021-12-03) ================== Bug Fixes: - Fixed CVE-2021-3657: multiple buffer overflows on excessively large IMAP literals - Fixed CVE-2021-44143: buffer overflow on header-less messages - Fixed crash on certain malformed messages in Maildirs - Fixed somewhat spurious notice about conflicting changes on messages marked as deleted @ text @$NetBSD$ Avoid segfault when parsing configuration file under NetBSD. --- src/config.c.orig 2026-05-13 18:02:57.689819229 +0000 +++ src/config.c @@@@ -433,7 +433,7 @@@@ load_config( const char *where ) load_config( const char *where ) { conffile_t cfile; - store_conf_t *store, **storeapp = &stores; + store_conf_t *store = NULL, **storeapp = &stores; channel_conf_t *channel, **channelapp = &channels; group_conf_t *group, **groupapp = &groups; string_list_t *chanlist, **chanlistapp; @