[dovecot/pigeonhole] 641389: plugins: sieve-extprograms: Fix segfault occurring...

GitHub noreply at github.com
Fri Jan 5 02:41:50 EET 2018


  Branch: refs/heads/release-0.5.0
  Home:   https://github.com/dovecot/pigeonhole
  Commit: 64138985d382e9ef9ca3cc40320367c3cd015fc7
      https://github.com/dovecot/pigeonhole/commit/64138985d382e9ef9ca3cc40320367c3cd015fc7
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-01-05 (Fri, 05 Jan 2018)

  Changed paths:
    M src/plugins/sieve-extprograms/sieve-extprograms-common.c

  Log Message:
  -----------
  plugins: sieve-extprograms: Fix segfault occurring when used in IMAPSieve context.

This was caused by recent lib-smtp changes.
There is no envelope in IMAPSieve context, so the rcpt parameters are NULL, causing the segfault.


  Commit: 3ea72e710d188c54326a0ebda68a9eccca0e2044
      https://github.com/dovecot/pigeonhole/commit/3ea72e710d188c54326a0ebda68a9eccca0e2044
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-01-05 (Fri, 05 Jan 2018)

  Changed paths:
    M doc/man/doveadm-sieve.1.in
    M doc/man/pigeonhole.7.in
    M doc/man/sieve-dump.1.in
    M doc/man/sieve-filter.1.in
    M doc/man/sieve-test.1.in
    M doc/man/sievec.1.in
    M src/lib-managesieve/managesieve-arg.c
    M src/lib-managesieve/managesieve-arg.h
    M src/lib-managesieve/managesieve-parser.c
    M src/lib-managesieve/managesieve-parser.h
    M src/lib-managesieve/managesieve-quote.c
    M src/lib-managesieve/managesieve-quote.h
    M src/lib-sieve-tool/mail-raw.c
    M src/lib-sieve-tool/mail-raw.h
    M src/lib-sieve-tool/sieve-tool.c
    M src/lib-sieve-tool/sieve-tool.h
    M src/lib-sieve/cmd-discard.c
    M src/lib-sieve/cmd-if.c
    M src/lib-sieve/cmd-keep.c
    M src/lib-sieve/cmd-redirect.c
    M src/lib-sieve/cmd-require.c
    M src/lib-sieve/cmd-stop.c
    M src/lib-sieve/cmp-i-ascii-casemap.c
    M src/lib-sieve/cmp-i-octet.c
    M src/lib-sieve/ext-encoded-character.c
    M src/lib-sieve/ext-envelope.c
    M src/lib-sieve/ext-fileinto.c
    M src/lib-sieve/ext-reject.c
    M src/lib-sieve/mcht-contains.c
    M src/lib-sieve/mcht-is.c
    M src/lib-sieve/mcht-matches.c
    M src/lib-sieve/plugins/body/ext-body-common.c
    M src/lib-sieve/plugins/body/ext-body-common.h
    M src/lib-sieve/plugins/body/ext-body.c
    M src/lib-sieve/plugins/body/tst-body.c
    M src/lib-sieve/plugins/comparator-i-ascii-numeric/ext-cmp-i-ascii-numeric.c
    M src/lib-sieve/plugins/copy/ext-copy.c
    M src/lib-sieve/plugins/copy/sieve-ext-copy.h
    M src/lib-sieve/plugins/date/ext-date-common.c
    M src/lib-sieve/plugins/date/ext-date-common.h
    M src/lib-sieve/plugins/date/ext-date.c
    M src/lib-sieve/plugins/date/tst-date.c
    M src/lib-sieve/plugins/duplicate/ext-duplicate-common.c
    M src/lib-sieve/plugins/duplicate/ext-duplicate-common.h
    M src/lib-sieve/plugins/duplicate/ext-duplicate.c
    M src/lib-sieve/plugins/duplicate/tst-duplicate.c
    M src/lib-sieve/plugins/editheader/cmd-addheader.c
    M src/lib-sieve/plugins/editheader/cmd-deleteheader.c
    M src/lib-sieve/plugins/editheader/ext-editheader-common.c
    M src/lib-sieve/plugins/editheader/ext-editheader-common.h
    M src/lib-sieve/plugins/editheader/ext-editheader-limits.h
    M src/lib-sieve/plugins/editheader/ext-editheader.c
    M src/lib-sieve/plugins/enotify/cmd-notify.c
    M src/lib-sieve/plugins/enotify/ext-enotify-common.c
    M src/lib-sieve/plugins/enotify/ext-enotify-common.h
    M src/lib-sieve/plugins/enotify/ext-enotify-limits.h
    M src/lib-sieve/plugins/enotify/ext-enotify.c
    M src/lib-sieve/plugins/enotify/mailto/ntfy-mailto.c
    M src/lib-sieve/plugins/enotify/mailto/uri-mailto.c
    M src/lib-sieve/plugins/enotify/mailto/uri-mailto.h
    M src/lib-sieve/plugins/enotify/sieve-ext-enotify.h
    M src/lib-sieve/plugins/enotify/tst-notify-method-capability.c
    M src/lib-sieve/plugins/enotify/tst-valid-notify-method.c
    M src/lib-sieve/plugins/enotify/vmodf-encodeurl.c
    M src/lib-sieve/plugins/environment/ext-environment-common.c
    M src/lib-sieve/plugins/environment/ext-environment-common.h
    M src/lib-sieve/plugins/environment/ext-environment.c
    M src/lib-sieve/plugins/environment/sieve-ext-environment.h
    M src/lib-sieve/plugins/environment/tst-environment.c
    M src/lib-sieve/plugins/ihave/cmd-error.c
    M src/lib-sieve/plugins/ihave/ext-ihave-binary.c
    M src/lib-sieve/plugins/ihave/ext-ihave-binary.h
    M src/lib-sieve/plugins/ihave/ext-ihave-common.c
    M src/lib-sieve/plugins/ihave/ext-ihave-common.h
    M src/lib-sieve/plugins/ihave/ext-ihave.c
    M src/lib-sieve/plugins/ihave/tst-ihave.c
    M src/lib-sieve/plugins/imap4flags/cmd-flag.c
    M src/lib-sieve/plugins/imap4flags/ext-imap4flags-common.c
    M src/lib-sieve/plugins/imap4flags/ext-imap4flags-common.h
    M src/lib-sieve/plugins/imap4flags/ext-imap4flags.c
    M src/lib-sieve/plugins/imap4flags/ext-imapflags.c
    M src/lib-sieve/plugins/imap4flags/sieve-ext-imap4flags.h
    M src/lib-sieve/plugins/imap4flags/tag-flags.c
    M src/lib-sieve/plugins/imap4flags/tst-hasflag.c
    M src/lib-sieve/plugins/include/cmd-global.c
    M src/lib-sieve/plugins/include/cmd-include.c
    M src/lib-sieve/plugins/include/cmd-return.c
    M src/lib-sieve/plugins/include/ext-include-binary.c
    M src/lib-sieve/plugins/include/ext-include-binary.h
    M src/lib-sieve/plugins/include/ext-include-common.c
    M src/lib-sieve/plugins/include/ext-include-common.h
    M src/lib-sieve/plugins/include/ext-include-limits.h
    M src/lib-sieve/plugins/include/ext-include-variables.c
    M src/lib-sieve/plugins/include/ext-include-variables.h
    M src/lib-sieve/plugins/include/ext-include.c
    M src/lib-sieve/plugins/index/ext-index-common.c
    M src/lib-sieve/plugins/index/ext-index-common.h
    M src/lib-sieve/plugins/index/ext-index.c
    M src/lib-sieve/plugins/index/tag-index.c
    M src/lib-sieve/plugins/mailbox/ext-mailbox-common.h
    M src/lib-sieve/plugins/mailbox/ext-mailbox.c
    M src/lib-sieve/plugins/mailbox/sieve-ext-mailbox.h
    M src/lib-sieve/plugins/mailbox/tag-mailbox-create.c
    M src/lib-sieve/plugins/mailbox/tst-mailboxexists.c
    M src/lib-sieve/plugins/metadata/ext-metadata-common.h
    M src/lib-sieve/plugins/metadata/ext-metadata.c
    M src/lib-sieve/plugins/metadata/tst-metadata.c
    M src/lib-sieve/plugins/metadata/tst-metadataexists.c
    M src/lib-sieve/plugins/mime/cmd-break.c
    M src/lib-sieve/plugins/mime/cmd-extracttext.c
    M src/lib-sieve/plugins/mime/cmd-foreverypart.c
    M src/lib-sieve/plugins/mime/ext-extracttext.c
    M src/lib-sieve/plugins/mime/ext-foreverypart.c
    M src/lib-sieve/plugins/mime/ext-mime-common.c
    M src/lib-sieve/plugins/mime/ext-mime-common.h
    M src/lib-sieve/plugins/mime/ext-mime.c
    M src/lib-sieve/plugins/mime/tag-mime.c
    M src/lib-sieve/plugins/notify/cmd-denotify.c
    M src/lib-sieve/plugins/notify/cmd-notify.c
    M src/lib-sieve/plugins/notify/ext-notify-common.c
    M src/lib-sieve/plugins/notify/ext-notify-common.h
    M src/lib-sieve/plugins/notify/ext-notify-limits.h
    M src/lib-sieve/plugins/notify/ext-notify.c
    M src/lib-sieve/plugins/regex/ext-regex-common.c
    M src/lib-sieve/plugins/regex/ext-regex-common.h
    M src/lib-sieve/plugins/regex/ext-regex.c
    M src/lib-sieve/plugins/regex/mcht-regex.c
    M src/lib-sieve/plugins/relational/ext-relational-common.c
    M src/lib-sieve/plugins/relational/ext-relational-common.h
    M src/lib-sieve/plugins/relational/ext-relational.c
    M src/lib-sieve/plugins/relational/mcht-count.c
    M src/lib-sieve/plugins/relational/mcht-value.c
    M src/lib-sieve/plugins/spamvirustest/ext-spamvirustest-common.c
    M src/lib-sieve/plugins/spamvirustest/ext-spamvirustest-common.h
    M src/lib-sieve/plugins/spamvirustest/ext-spamvirustest.c
    M src/lib-sieve/plugins/spamvirustest/tst-spamvirustest.c
    M src/lib-sieve/plugins/subaddress/ext-subaddress.c
    M src/lib-sieve/plugins/vacation/cmd-vacation.c
    M src/lib-sieve/plugins/vacation/ext-vacation-common.c
    M src/lib-sieve/plugins/vacation/ext-vacation-common.h
    M src/lib-sieve/plugins/vacation/ext-vacation-seconds.c
    M src/lib-sieve/plugins/vacation/ext-vacation.c
    M src/lib-sieve/plugins/variables/cmd-set.c
    M src/lib-sieve/plugins/variables/ext-variables-arguments.c
    M src/lib-sieve/plugins/variables/ext-variables-arguments.h
    M src/lib-sieve/plugins/variables/ext-variables-common.c
    M src/lib-sieve/plugins/variables/ext-variables-common.h
    M src/lib-sieve/plugins/variables/ext-variables-dump.c
    M src/lib-sieve/plugins/variables/ext-variables-dump.h
    M src/lib-sieve/plugins/variables/ext-variables-limits.h
    M src/lib-sieve/plugins/variables/ext-variables-modifiers.c
    M src/lib-sieve/plugins/variables/ext-variables-modifiers.h
    M src/lib-sieve/plugins/variables/ext-variables-name.c
    M src/lib-sieve/plugins/variables/ext-variables-name.h
    M src/lib-sieve/plugins/variables/ext-variables-namespaces.c
    M src/lib-sieve/plugins/variables/ext-variables-namespaces.h
    M src/lib-sieve/plugins/variables/ext-variables-operands.c
    M src/lib-sieve/plugins/variables/ext-variables-operands.h
    M src/lib-sieve/plugins/variables/ext-variables.c
    M src/lib-sieve/plugins/variables/sieve-ext-variables.h
    M src/lib-sieve/plugins/variables/tst-string.c
    M src/lib-sieve/plugins/vnd.dovecot/debug/cmd-debug-log.c
    M src/lib-sieve/plugins/vnd.dovecot/debug/ext-debug-common.h
    M src/lib-sieve/plugins/vnd.dovecot/debug/ext-debug.c
    M src/lib-sieve/plugins/vnd.dovecot/environment/ext-vnd-environment-common.h
    M src/lib-sieve/plugins/vnd.dovecot/environment/ext-vnd-environment-items.c
    M src/lib-sieve/plugins/vnd.dovecot/environment/ext-vnd-environment-variables.c
    M src/lib-sieve/plugins/vnd.dovecot/environment/ext-vnd-environment.c
    M src/lib-sieve/plugins/vnd.dovecot/report/cmd-report.c
    M src/lib-sieve/plugins/vnd.dovecot/report/ext-vnd-report-common.c
    M src/lib-sieve/plugins/vnd.dovecot/report/ext-vnd-report.c
    M src/lib-sieve/sieve-actions.c
    M src/lib-sieve/sieve-actions.h
    M src/lib-sieve/sieve-address-parts.c
    M src/lib-sieve/sieve-address-parts.h
    M src/lib-sieve/sieve-address-source.c
    M src/lib-sieve/sieve-address-source.h
    M src/lib-sieve/sieve-address.c
    M src/lib-sieve/sieve-address.h
    M src/lib-sieve/sieve-ast.c
    M src/lib-sieve/sieve-ast.h
    M src/lib-sieve/sieve-binary-code.c
    M src/lib-sieve/sieve-binary-debug.c
    M src/lib-sieve/sieve-binary-dumper.c
    M src/lib-sieve/sieve-binary-dumper.h
    M src/lib-sieve/sieve-binary-file.c
    M src/lib-sieve/sieve-binary-private.h
    M src/lib-sieve/sieve-binary.c
    M src/lib-sieve/sieve-binary.h
    M src/lib-sieve/sieve-code-dumper.c
    M src/lib-sieve/sieve-code-dumper.h
    M src/lib-sieve/sieve-code.c
    M src/lib-sieve/sieve-code.h
    M src/lib-sieve/sieve-commands.c
    M src/lib-sieve/sieve-commands.h
    M src/lib-sieve/sieve-common.h
    M src/lib-sieve/sieve-comparators.c
    M src/lib-sieve/sieve-comparators.h
    M src/lib-sieve/sieve-config.h
    M src/lib-sieve/sieve-dump.h
    M src/lib-sieve/sieve-error-private.h
    M src/lib-sieve/sieve-error.c
    M src/lib-sieve/sieve-error.h
    M src/lib-sieve/sieve-extensions.c
    M src/lib-sieve/sieve-extensions.h
    M src/lib-sieve/sieve-generator.c
    M src/lib-sieve/sieve-generator.h
    M src/lib-sieve/sieve-interpreter.c
    M src/lib-sieve/sieve-interpreter.h
    M src/lib-sieve/sieve-lexer.c
    M src/lib-sieve/sieve-lexer.h
    M src/lib-sieve/sieve-limits.h
    M src/lib-sieve/sieve-match-types.c
    M src/lib-sieve/sieve-match-types.h
    M src/lib-sieve/sieve-match.c
    M src/lib-sieve/sieve-match.h
    M src/lib-sieve/sieve-message.c
    M src/lib-sieve/sieve-message.h
    M src/lib-sieve/sieve-objects.c
    M src/lib-sieve/sieve-objects.h
    M src/lib-sieve/sieve-parser.c
    M src/lib-sieve/sieve-parser.h
    M src/lib-sieve/sieve-plugins.c
    M src/lib-sieve/sieve-plugins.h
    M src/lib-sieve/sieve-result.c
    M src/lib-sieve/sieve-result.h
    M src/lib-sieve/sieve-runtime-trace.c
    M src/lib-sieve/sieve-runtime-trace.h
    M src/lib-sieve/sieve-runtime.h
    M src/lib-sieve/sieve-script-private.h
    M src/lib-sieve/sieve-script.c
    M src/lib-sieve/sieve-script.h
    M src/lib-sieve/sieve-settings.c
    M src/lib-sieve/sieve-settings.h
    M src/lib-sieve/sieve-smtp.c
    M src/lib-sieve/sieve-smtp.h
    M src/lib-sieve/sieve-storage-private.h
    M src/lib-sieve/sieve-storage-sync.c
    M src/lib-sieve/sieve-storage.c
    M src/lib-sieve/sieve-storage.h
    M src/lib-sieve/sieve-stringlist.c
    M src/lib-sieve/sieve-stringlist.h
    M src/lib-sieve/sieve-types.h
    M src/lib-sieve/sieve-validator.c
    M src/lib-sieve/sieve-validator.h
    M src/lib-sieve/sieve.c
    M src/lib-sieve/sieve.h
    M src/lib-sieve/storage/dict/sieve-dict-script.c
    M src/lib-sieve/storage/dict/sieve-dict-storage.c
    M src/lib-sieve/storage/dict/sieve-dict-storage.h
    M src/lib-sieve/storage/file/sieve-file-script-sequence.c
    M src/lib-sieve/storage/file/sieve-file-script.c
    M src/lib-sieve/storage/file/sieve-file-storage-active.c
    M src/lib-sieve/storage/file/sieve-file-storage-list.c
    M src/lib-sieve/storage/file/sieve-file-storage-quota.c
    M src/lib-sieve/storage/file/sieve-file-storage-save.c
    M src/lib-sieve/storage/file/sieve-file-storage.c
    M src/lib-sieve/storage/file/sieve-file-storage.h
    M src/lib-sieve/storage/ldap/sieve-ldap-db.c
    M src/lib-sieve/storage/ldap/sieve-ldap-script.c
    M src/lib-sieve/storage/ldap/sieve-ldap-storage-settings.c
    M src/lib-sieve/storage/ldap/sieve-ldap-storage.c
    M src/lib-sieve/storage/ldap/sieve-ldap-storage.h
    M src/lib-sieve/tst-address.c
    M src/lib-sieve/tst-allof.c
    M src/lib-sieve/tst-anyof.c
    M src/lib-sieve/tst-exists.c
    M src/lib-sieve/tst-header.c
    M src/lib-sieve/tst-not.c
    M src/lib-sieve/tst-size.c
    M src/lib-sieve/tst-truefalse.c
    M src/lib-sieve/util/edit-mail.c
    M src/lib-sieve/util/edit-mail.h
    M src/lib-sieve/util/rfc2822.c
    M src/lib-sieve/util/rfc2822.h
    M src/managesieve-login/client-authenticate.c
    M src/managesieve-login/client-authenticate.h
    M src/managesieve-login/client.c
    M src/managesieve-login/client.h
    M src/managesieve-login/managesieve-login-settings-plugin.c
    M src/managesieve-login/managesieve-login-settings-plugin.h
    M src/managesieve-login/managesieve-login-settings.c
    M src/managesieve-login/managesieve-login-settings.h
    M src/managesieve-login/managesieve-proxy.c
    M src/managesieve-login/managesieve-proxy.h
    M src/managesieve/cmd-capability.c
    M src/managesieve/cmd-deletescript.c
    M src/managesieve/cmd-getscript.c
    M src/managesieve/cmd-havespace.c
    M src/managesieve/cmd-listscripts.c
    M src/managesieve/cmd-logout.c
    M src/managesieve/cmd-noop.c
    M src/managesieve/cmd-putscript.c
    M src/managesieve/cmd-renamescript.c
    M src/managesieve/cmd-setactive.c
    M src/managesieve/main.c
    M src/managesieve/managesieve-capabilities.c
    M src/managesieve/managesieve-capabilities.h
    M src/managesieve/managesieve-client.c
    M src/managesieve/managesieve-client.h
    M src/managesieve/managesieve-commands.c
    M src/managesieve/managesieve-commands.h
    M src/managesieve/managesieve-common.h
    M src/managesieve/managesieve-quota.c
    M src/managesieve/managesieve-quota.h
    M src/managesieve/managesieve-settings.c
    M src/managesieve/managesieve-settings.h
    M src/plugins/doveadm-sieve/doveadm-sieve-cmd-activate.c
    M src/plugins/doveadm-sieve/doveadm-sieve-cmd-delete.c
    M src/plugins/doveadm-sieve/doveadm-sieve-cmd-get.c
    M src/plugins/doveadm-sieve/doveadm-sieve-cmd-list.c
    M src/plugins/doveadm-sieve/doveadm-sieve-cmd-put.c
    M src/plugins/doveadm-sieve/doveadm-sieve-cmd-rename.c
    M src/plugins/doveadm-sieve/doveadm-sieve-cmd.c
    M src/plugins/doveadm-sieve/doveadm-sieve-cmd.h
    M src/plugins/doveadm-sieve/doveadm-sieve-plugin.c
    M src/plugins/doveadm-sieve/doveadm-sieve-plugin.h
    M src/plugins/doveadm-sieve/doveadm-sieve-sync.c
    M src/plugins/imapsieve/ext-imapsieve-common.h
    M src/plugins/imapsieve/ext-imapsieve-environment.c
    M src/plugins/imapsieve/ext-imapsieve.c
    M src/plugins/imapsieve/imap-sieve-plugin.c
    M src/plugins/imapsieve/imap-sieve-plugin.h
    M src/plugins/imapsieve/imap-sieve-storage.c
    M src/plugins/imapsieve/imap-sieve-storage.h
    M src/plugins/imapsieve/imap-sieve.c
    M src/plugins/imapsieve/imap-sieve.h
    M src/plugins/imapsieve/sieve-imapsieve-plugin.c
    M src/plugins/imapsieve/sieve-imapsieve-plugin.h
    M src/plugins/lda-sieve/lda-sieve-log.c
    M src/plugins/lda-sieve/lda-sieve-log.h
    M src/plugins/lda-sieve/lda-sieve-plugin.c
    M src/plugins/lda-sieve/lda-sieve-plugin.h
    M src/plugins/settings/pigeonhole-settings.c
    M src/plugins/sieve-extprograms/cmd-execute.c
    M src/plugins/sieve-extprograms/cmd-filter.c
    M src/plugins/sieve-extprograms/cmd-pipe.c
    M src/plugins/sieve-extprograms/ext-execute.c
    M src/plugins/sieve-extprograms/ext-filter.c
    M src/plugins/sieve-extprograms/ext-pipe.c
    M src/plugins/sieve-extprograms/sieve-extprograms-common.c
    M src/plugins/sieve-extprograms/sieve-extprograms-common.h
    M src/plugins/sieve-extprograms/sieve-extprograms-plugin.c
    M src/plugins/sieve-extprograms/sieve-extprograms-plugin.h
    M src/sieve-tools/sieve-dump.c
    M src/sieve-tools/sieve-filter.c
    M src/sieve-tools/sieve-test.c
    M src/sieve-tools/sievec.c
    M src/testsuite/cmd-test-binary.c
    M src/testsuite/cmd-test-config.c
    M src/testsuite/cmd-test-fail.c
    M src/testsuite/cmd-test-imap-metadata.c
    M src/testsuite/cmd-test-mailbox.c
    M src/testsuite/cmd-test-message.c
    M src/testsuite/cmd-test-result.c
    M src/testsuite/cmd-test-set.c
    M src/testsuite/cmd-test.c
    M src/testsuite/ext-testsuite.c
    M src/testsuite/testsuite-arguments.c
    M src/testsuite/testsuite-arguments.h
    M src/testsuite/testsuite-binary.c
    M src/testsuite/testsuite-binary.h
    M src/testsuite/testsuite-common.c
    M src/testsuite/testsuite-common.h
    M src/testsuite/testsuite-log.c
    M src/testsuite/testsuite-log.h
    M src/testsuite/testsuite-mailstore.c
    M src/testsuite/testsuite-mailstore.h
    M src/testsuite/testsuite-message.c
    M src/testsuite/testsuite-message.h
    M src/testsuite/testsuite-objects.c
    M src/testsuite/testsuite-objects.h
    M src/testsuite/testsuite-result.c
    M src/testsuite/testsuite-result.h
    M src/testsuite/testsuite-script.c
    M src/testsuite/testsuite-script.h
    M src/testsuite/testsuite-settings.c
    M src/testsuite/testsuite-settings.h
    M src/testsuite/testsuite-smtp.c
    M src/testsuite/testsuite-smtp.h
    M src/testsuite/testsuite-substitutions.c
    M src/testsuite/testsuite-substitutions.h
    M src/testsuite/testsuite-variables.c
    M src/testsuite/testsuite-variables.h
    M src/testsuite/testsuite.c
    M src/testsuite/tst-test-error.c
    M src/testsuite/tst-test-multiscript.c
    M src/testsuite/tst-test-result-action.c
    M src/testsuite/tst-test-result-execute.c
    M src/testsuite/tst-test-script-compile.c
    M src/testsuite/tst-test-script-run.c

  Log Message:
  -----------
  Updated copyright notices to include the year 2018.


  Commit: b508744d86482de0db70e1c09e1c164fde904507
      https://github.com/dovecot/pigeonhole/commit/b508744d86482de0db70e1c09e1c164fde904507
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-01-05 (Fri, 05 Jan 2018)

  Changed paths:
    M src/lib-sieve/plugins/imap4flags/cmd-flag.c
    M src/lib-sieve/plugins/imap4flags/ext-imap4flags.c

  Log Message:
  -----------
  lib-sieve: imap4flags extension: Fix binary corruption occurring when setflag/addflag/removeflag flag-list is a variable.

The original implementation checked the first operand for being a variable.
Obviously, when the assigned flag string is just a variable, this doesn't work.
This causes the flag list to be recognized erroneously as a variable flags
string. Fixed the problem by explicitly emitting an omitted operand when there
is no second argument for a setflag/addflag/removeflag.

Because the new byte code format is incompatible, the extension version is
bumped to 1.


  Commit: 90fad4e328d3f292b9f069c93aacbd75a032a83d
      https://github.com/dovecot/pigeonhole/commit/90fad4e328d3f292b9f069c93aacbd75a032a83d
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-01-05 (Fri, 05 Jan 2018)

  Changed paths:
    M tests/extensions/imap4flags/basic.svtest

  Log Message:
  -----------
  tests: imap4flags extension: Added more tests involving variables.


  Commit: d33dca203b94972439ccd4e8652d5a847909b68f
      https://github.com/dovecot/pigeonhole/commit/d33dca203b94972439ccd4e8652d5a847909b68f
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-01-05 (Fri, 05 Jan 2018)

  Changed paths:
    M NEWS
    M configure.ac

  Log Message:
  -----------
  Released v0.5.0.1 for Dovecot v2.3.0.


Compare: https://github.com/dovecot/pigeonhole/compare/d68c23a12f4b...d33dca203b94


More information about the dovecot-cvs mailing list