[dovecot/core | refs/heads/master-2.2] c953d057: pop3: Do not expunge \Deleted mails without QUIT

noreply at dovecot.org noreply at dovecot.org
Fri Jan 25 12:00:24 EET 2019


  Branch: refs/heads/master-2.2
  Home:   https://github.com/dovecot/core
  Commit: c953d057a484df17fc648fc1d8bdd60c02cbcb22
      https://github.com/dovecot/core/commit/c953d057a484df17fc648fc1d8bdd60c02cbcb22
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2019-01-25 (Fri, 25 Jan 2019)

  Changed paths:
    M src/pop3/pop3-client.h
    M src/pop3/pop3-commands.c

  Log Message:
  -----------
  pop3: Do not expunge \Deleted mails without QUIT

Prevents loss of email if connection
is unexpectedly terminated.

  Commit: d1612744b1cbf42cc62720f74beacdc57b742a55
      https://github.com/dovecot/core/commit/d1612744b1cbf42cc62720f74beacdc57b742a55
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2019-01-25 (Fri, 25 Jan 2019)

  Changed paths:
    M src/lib-storage/index/index-mail-headers.c
    M src/lib-storage/index/index-mail.c
    M src/lib-storage/index/index-mail.h

  Log Message:
  -----------
  lib-storage: Fix bodystructure parsing crash if header is parsed twice

The second parsing will recreate the parser_ctx, discarding the old parsed
message_part.data for the header. On the second parsing
save_bodystructure_header=FALSE so the message_part.data isn't filled for
the header. Later on the bodystructure parsing assumes the data is set,
and crashes.

This only happened with mail_attachment_detection_options=add-flags-on-save
and Sieve script that first accessed a non-cached header and then used the
"body" extension.

Fixes segfault and also:
Panic: file imap-bodystructure.c: line 116 (part_write_body_multipart): assertion failed: (part->data != NULL)

  Commit: 2fecbc8579b443829b420a693ab61c2ec9041daf
      https://github.com/dovecot/core/commit/2fecbc8579b443829b420a693ab61c2ec9041daf
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2019-01-25 (Fri, 25 Jan 2019)

  Changed paths:
    M src/lib-mail/message-part-data.c

  Log Message:
  -----------
  lib-mail: Add asserts to message_part_*() to make sure part->data isn't NULL

This makes it easier to debug the crashes than just having a segfault.

  Patch: https://github.com/dovecot/core/compare/00955a07bae0...c953d057a484.patch


More information about the dovecot-cvs mailing list