2019-12-04 09:02:28 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (e7f79df99)

    Released v2.3.9


M	configure.ac

2019-11-29 12:31:00 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (f4cecdedc)

    NEWS: Add news for 2.3.9


M	NEWS

2019-11-29 12:06:37 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (0e5b6d87d)

    NEWS: Sync missing news v2.3.7-v2.3.8


M	NEWS

2019-12-02 08:51:34 -0500 Josef 'Jeff' Sipek <jeff.sipek@open-xchange.com> (93f838975)

    lib: Free internal event categories on lib deinit


M	src/lib/lib-event.c

2019-11-27 15:49:52 -0500 Josef 'Jeff' Sipek <jeff.sipek@open-xchange.com> (f2cc65a5a)

    lib: Add ->clear_field() passthrough event op


M	src/lib/lib-event.c
M	src/lib/lib-event.h

2019-11-22 17:33:06 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (79e1d8182)

    lib-http: client request events: Add "dest_ip" field


M	src/lib-http/http-client-request.c

2019-11-22 17:04:34 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (d8cb4bb7b)

    lib-http: client request events: Add "dest_" prefix to "host" and "port"

    This makes it consistent with the event names in connection API.

M	src/lib-http/http-client-request.c

2019-11-25 22:12:06 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (afe5e1b0a)

    lib: connection: Remove assert for remote_port != 0

    This can happen if connection_init_server_ip() is called with remote_ip set 
    but not remote_port. Alternative fix might be to move the assert to it.

M	src/lib/connection.c

2019-11-25 15:18:51 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (e4dc07858)

    lib: connection: Rename unix_peer_known to unix_peer_checked

    This reflects more correctly what it means.

M	src/lib/connection.c
M	src/lib/connection.h

2019-11-25 15:16:09 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (1c64f03b2)

    lib: connection: Cleanup connection_update_properties()

    Add comments and change the code flows a bit to make it clearer what is 
    supposed to happen.

    Fixes also a potential bug where getpeername() could return 0, but if errno
    wasn't changed the following errno==ENOTSOCK could have wrongly matched.

M	src/lib/connection.c

2019-11-25 19:46:52 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (500a33d5b)

    lib: connection: Fix remote_pid and remote_uid in UNIX client connection log
    prefixes

    They previously weren't included in the log prefixes, because 
    unix_peer_known was set to TRUE too early.

M	src/lib/connection.c

2019-11-25 15:13:28 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (6f82f5ec3)

    lib: connection: Don't set remote_pid or remote_uid to TCP connection event

    They weren't initialized properly when connection_init_server_ip() or 
    connection_init_client_ip_from() was called with remote_ip parameter.

M	src/lib/connection.c

2019-11-22 16:12:36 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (aa446a7ca)

    lib: connection: Add "dest_host" event field if given


M	src/lib/connection.c

2019-11-22 16:59:55 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (13cf92a0c)

    lib: connection: Remove clearing of event fields

    This was done mainly because the fields could have become mixed up when a 
    client connection event had a parent server connection event. But now that 
    the IP and port fields are different for client and server connections this 
    problem mainly doesn't exist.

M	src/lib/connection.c

2019-11-22 15:39:14 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (d9444b3c0)

    lib: connection: Fix naming of remote/local_ip/port

    For client connections these fields were duplicated as "ip", "port" and
    "client_ip".

    Now make it explicit that client connections only have source_* and dest_*, 
    while server connections only have local_* and remote_*.

M	src/lib/connection.c

2019-11-22 17:20:54 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (5380fd5a9)

    imap: rename: Add "old_mailbox" and "new_mailbox" fields to command event


M	src/imap/cmd-rename.c

2019-11-21 15:38:25 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (d7dc9ca67)

    imap: Add "mailbox" field to imap command events that use mailboxes


M	src/imap/cmd-append.c
M	src/imap/cmd-create.c
M	src/imap/cmd-delete.c
M	src/imap/cmd-getmetadata.c
M	src/imap/cmd-resetkey.c
M	src/imap/cmd-select.c
M	src/imap/cmd-setmetadata.c
M	src/imap/cmd-status.c
M	src/imap/cmd-subscribe.c
M	src/imap/imap-commands-util.c

2019-11-21 15:31:40 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (9a91919d8)

    imap: Fix setting imap client event's "session" field for CLI sessions


M	src/imap/main.c

2019-11-21 15:30:38 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (da711d25d)

    imap: Remove imap_client.session_id

    Use mail_user.session_id instead. The imap_client.session_id was NULL for 
    command line sessions, which gets fixed by using mail_user.session_id.

M	src/imap/imap-client-hibernate.c
M	src/imap/imap-client.c
M	src/imap/imap-client.h
M	src/imap/main.c

2019-11-21 15:21:13 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (d58472d13)

    lib-storage: Remove mail_user and mail_storage_service_user events'
    "service" field

    There is already "service:<name>" category added to all events so this is 
    duplication.

    If it's later on decided to be useful after all, it should be added 
    automatically to all events. Probably by creating the root event in 
    lib-master.

M	src/lib-storage/mail-storage-service.c
M	src/lib-storage/mail-user.c

2019-11-21 15:15:44 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (ef4c41241)

    lib-storage: Remove local/remote_ip/port from mail_storage_service_user
    event

    These make sense more in the parent event.

M	src/lib-storage/mail-storage-service.c
M	src/lib-storage/mail-user.c

2019-11-21 15:12:12 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (8e1d2cb0e)

    imap: Add local/remote_ip/port to imap client event fields


M	src/imap/main.c

2019-11-21 14:58:50 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (05950e90d)

    lib-storage: Rename mailbox event field "name" to "mailbox"

    The "name" could conflict with child events. It's also much clearer this way
    especially when accessed via child events.

M	src/lib-storage/fail-mailbox.c
M	src/lib-storage/index/index-storage.c

2019-11-21 14:57:33 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (f4dc8cf07)

    lib-smtp: Rename event field "name" to "cmd_name"

    This makes it consistent with imap's cmd_name.

M	src/lib-smtp/smtp-client-command.c
M	src/lib-smtp/smtp-server-command.c

2018-08-20 22:18:27 +0200 Stephan Bosch <stephan.bosch@dovecot.fi> (52d97abca)

    lmtp: Add client workarounds.

    Adds same workarounds as the submission service supports.

M	doc/example-config/conf.d/20-lmtp.conf
M	src/lmtp/lmtp-client.c
M	src/lmtp/lmtp-settings.c
M	src/lmtp/lmtp-settings.h

2018-08-20 22:00:04 +0200 Stephan Bosch <stephan.bosch@dovecot.fi> (01be72bc6)

    submission: Rename workaround enum values.

    Avoid conflicts with other protocols.

M	src/submission/submission-client.c
M	src/submission/submission-settings.c
M	src/submission/submission-settings.h

2019-11-13 22:59:03 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (bd182d5f4)

    lmtp: lmtp-commands - Fix application of the lmtp_hdr_delivery_address
    setting.

    Its value was ignored. It got broken by the move to the new lib-smtp for
    v2.3.

M	src/lmtp/lmtp-commands.c

2019-11-13 22:58:13 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (fe64b2db9)

    lmtp: lmtp-commands - Simplify lmtp_local_add_headers().


M	src/lmtp/lmtp-local.c

2019-11-13 01:03:26 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (e6c3fcaf0)

    lmtp: lmtp-settings - Fix reading lmtp_hdr_delivery_address setting.

    The setting was not actually parsed.

M	src/lmtp/lmtp-settings.c

2019-11-13 22:36:07 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (a5d50b55b)

    lib-smtp: smtp-server-transaction - Make the recipient address used in trace
    headers configurable.


M	src/lib-smtp/smtp-server-transaction.c
M	src/lib-smtp/smtp-server.h
M	src/lmtp/lmtp-commands.c
M	src/submission/submission-commands.c

2019-11-13 23:41:51 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (4c1870b5e)

    lib-smtp: smtp-server-recipient - Add smtp_server_recipient_get_original().


M	src/lib-smtp/smtp-server-recipient.c
M	src/lib-smtp/smtp-server.h

2019-11-24 13:03:51 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (bc1e8ee82)

    lib-imap: Fix adding IMAP_ARG_EOL parameter to all unfinished lists

    This is a continuation for 6beb5339f163eaa470974ced2bcdf193f130d8a7, which
    added it only to the last open list, not its parent lists.

M	src/lib-imap/imap-parser.c
M	src/lib-imap/test-imap-parser.c

2019-11-04 15:37:17 -0500 Josef 'Jeff' Sipek <jeff.sipek@open-xchange.com> (31cdcc8f9)

    lib: Test category re-registration thoroughly


M	src/lib/Makefile.am
A	src/lib/test-event-category-register.c
M	src/lib/test-lib.inc

2019-10-24 17:58:22 -0400 Josef 'Jeff' Sipek <jeff.sipek@open-xchange.com> (ec7eb4bf3)

    lib: Use event category representatives instead of user supplied pointers

    Since we cannot rely on the consumers to supply us with unique category 
    pointers, we can switch all our tracking to the category representative 
    structures.

M	src/lib/event-filter.c
M	src/lib/lib-event.c

2019-10-24 17:40:32 -0400 Josef 'Jeff' Sipek <jeff.sipek@open-xchange.com> (a3664f483)

    lib: Maintain a representative event category inside internal state

    More than one category can be represented by the internal state.  To give 
    consumers a unique but consistent category pointer, we allocate a category 
    structure (technically part of the internal state) and use it as the 
    representative for all the registrations.

    Note: This commit only allocates and maintains the representatives.  It does 
    not make use of them.

M	src/lib/lib-event.c

2019-10-22 14:40:02 -0400 Josef 'Jeff' Sipek <jeff.sipek@open-xchange.com> (6e2315a70)

    lib: Keep an internal event category structure


M	src/lib/lib-event.c
M	src/lib/lib-event.h

2019-10-22 14:19:10 -0400 Josef 'Jeff' Sipek <jeff.sipek@open-xchange.com> (ede9f069c)

    lib: events: Replace ->registered with ->internal

    This is in preparation for maintaining an internal category state structure.

M	src/lib/event-filter.c
M	src/lib/lib-event.c
M	src/lib/lib-event.h

2019-11-08 12:58:47 -0500 Josef 'Jeff' Sipek <jeff.sipek@open-xchange.com> (2e9a50c4b)

    lib: Remove support for unregistering categories

    Nothing used the code and there were some unhandled corner cases.

M	src/lib/lib-event.c
M	src/lib/lib-event.h

2019-10-22 14:14:13 -0400 Josef 'Jeff' Sipek <jeff.sipek@open-xchange.com> (d602104bf)

    lib: Correct struct event_category's registered member's comment


M	src/lib/lib-event.h

2019-11-13 11:49:23 +0200 Sina Tavakoli <sina.tavakoli@open-xchange.com> (60ba83f5f)

    lib: json-parser: Escape characters U+2028 and U+2029 to avoid CR-LF
    conflict with some parsers.


M	src/lib/json-parser.c
M	src/lib/test-json-parser.c

2019-11-11 15:24:07 +0200 Sina Tavakoli <sina.tavakoli@open-xchange.com> (8a4ee47c9)

    lib: json-parser: Fix eager escaping UTF-8 characters


M	src/lib/json-parser.c
M	src/lib/test-json-parser.c

2019-11-10 14:16:49 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (f7980ca92)

    push-notification: lua: Expose UTF8 from/to/subject

    Replace the existing "subject" field with UTF8 subject. Add new 
    from_address, from_display_name, to_address and to_display_name where the
    *_display_names are UTF8.

M	src/plugins/push-notification/push-notification-driver-lua.c

2019-11-10 14:09:18 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (276e2f799)

    push-notification: Support UTF8-decoded from/to/subject

    Use a new struct push_notification_message_ext for this so both MessageNew 
    and MessageAppend events can share the same struct.

    For From and To addresses keep the actual email address and display-name in 
    separate fields, since some drivers want them separated.

M	src/plugins/push-notification/push-notification-event-message-common.c
M	src/plugins/push-notification/push-notification-event-message-common.h
M	src/plugins/push-notification/push-notification-event-messageappend.c
M	src/plugins/push-notification/push-notification-event-messageappend.h
M	src/plugins/push-notification/push-notification-event-messagenew.c
M	src/plugins/push-notification/push-notification-event-messagenew.h

2019-11-07 18:51:37 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (2f3ff6c0b)

    push-notification: Simplify code with p_strarray_dup()


M	src/plugins/push-notification/push-notification-event-message-common.c

2019-11-07 18:49:02 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (bb70d066d)

    push-notification: Deduplicate MessageNew and MessageAppend events' data
    gathering code

    It would have been simpler to share their structs, but that can't be done
    cleanly without breaking the API's backwards compatibility.

M	src/plugins/push-notification/Makefile.am
A	src/plugins/push-notification/push-notification-event-message-common.c
M	src/plugins/push-notification/push-notification-event-message-common.h
M	src/plugins/push-notification/push-notification-event-messageappend.c
M	src/plugins/push-notification/push-notification-event-messagenew.c

2019-11-21 09:42:09 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (24208aebc)

    lib-smtp: smtp-server-cmd-mail - Don't implicitly accept missing '<' and '>'
    when set->mail_path_allow_broken == TRUE.


M	src/lib-smtp/smtp-server-cmd-mail.c
M	src/lib-smtp/test-smtp-server-errors.c

2019-11-21 00:35:51 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (1d5a1038e)

    lib-smtp: smtp-address - Don't allow missing '<' and '>' with only
    SMTP_ADDRESS_PARSE_FLAG_IGNORE_BROKEN flag set.


M	src/lib-smtp/smtp-address.c
M	src/lib-smtp/test-smtp-address.c

2019-11-21 15:35:28 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (1002b7e0b)

    lib-smtp: test-smtp-server-errors - Fix "MAIL broken path" test.

    The test label and the number of clients was wrong.

M	src/lib-smtp/test-smtp-server-errors.c

2019-11-15 12:20:38 +0200 Martti Rannanjärvi <martti.rannanjarvi@open-xchange.com> (848255eb4)

    doveadm: Fix doveadm_proxy_port alias


M	src/doveadm/doveadm-settings.c

2019-11-07 13:01:47 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (76066c7c6)

    run-test-valgrind.supp: Fix libunwind supression

    The stack trace changed after the initial suppression was done

M	run-test-valgrind.supp

2019-11-07 14:34:48 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (643d9192c)

    lib-imap: imap_write_arg() - Write IMAP_ARG_LITERAL_SIZE* the same as
    imap_write_args_for_human()

    Either way it's not a proper literal because the content is missing. This is
    at least now more consistent.

M	src/lib-imap/imap-util.c

2019-11-07 14:29:07 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (837ad036d)

    imap: APPEND - Fix parameters for cmd_args and cmd_human_args

    Note that this still includes only the first parameters when CATENATE or 
    MULTIAPPEND is used.

M	src/imap/cmd-append.c

2019-11-07 14:28:56 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (4a869cd49)

    imap: client_args_finished() - support appending more args


M	src/imap/imap-client.c

2019-11-07 14:26:40 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (e01ed1d2b)

    imap: Split off client_args_finished()


M	src/imap/imap-client.c
M	src/imap/imap-client.h

2019-11-06 19:27:41 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (7a4addefd)

    imap: Add "cmd_" prefix to most imap_command_finished event parameters

    Especially "name" can conflict with child events' parameter.

M	src/imap/imap-client.c

2019-11-06 19:27:07 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (2f4b5de91)

    imap: Fix args and human_args parameters to imap_command_finished event

    They were being set too early when they didn't yet exist.

M	src/imap/imap-client.c

2019-11-08 10:57:01 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (32804e656)

    lib-imap: Add IMAP_ARG_EOL parameter also for unfinished lists

    If list parsing was stopped due to IMAP_ARG_LITERAL_SIZE* the list didn't 
    have IMAP_ARG_EOL added. However, imap_arg_get_list() could still have been
    used for it, which assumes that the IMAP_ARG_EOL exists.

    This didn't seem to cause any actual bugs so far, but the following commits 
    require this.

    The IMAP_ARG_EOL is appended and deleted immediately. This way it's seen by 
    imap_arg_get_list(), but it won't change any other behavior unexpectedly.

M	src/lib-imap/imap-arg.c
M	src/lib-imap/imap-parser.c

2019-10-29 18:47:51 +0200 Timo Sirainen <timo.sirainen@open-xchange.com> (0b40e87e0)

    lib: Add io_loop_stop_delayed()


M	src/lib/ioloop-private.h
M	src/lib/ioloop.c
M	src/lib/ioloop.h

2019-10-08 22:54:12 +0200 Stephan Bosch <stephan.bosch@open-xchange.com> (729c0ba2e)

    lmtp: lmtp-proxy - Add ORCPT parameter to RCPT command when recipient path
    changes.

    This will happen when passdb changes the username.

M	src/lmtp/lmtp-proxy.c

2019-10-09 00:25:41 +0200 Stephan Bosch <stephan.bosch@open-xchange.com> (ac0d75062)

    lib-smtp: smtp-params - Add support for parsing RCPT ORCPT parameter without
    domain.


M	src/lib-smtp/smtp-params.c
M	src/lib-smtp/smtp-params.h
M	src/lib-smtp/smtp-server-cmd-rcpt.c
M	src/lib-smtp/test-smtp-params.c

2019-10-08 22:57:02 +0200 Stephan Bosch <stephan.bosch@open-xchange.com> (4857df232)

    lib-smtp: smtp-params - Add smtp_params_rcpt_has_orcpt().

    Evaluates whether ORCPT parameter is present.

M	src/lib-smtp/smtp-params.c
M	src/lib-smtp/smtp-params.h

2019-10-08 22:56:21 +0200 Stephan Bosch <stephan.bosch@open-xchange.com> (444ede996)

    lib-smtp: smtp-params - Add smtp_params_rcpt_set_orcpt().

    Allows modifying the ORCPT parameter.

M	src/lib-smtp/smtp-params.c
M	src/lib-smtp/smtp-params.h

2019-10-09 00:21:53 +0200 Stephan Bosch <stephan.bosch@open-xchange.com> (9525a52c8)

    lib-smtp: smtp-address - Prevent/handle empty string values in fields of
    struct smtp_address.

    This prevents e.g. writing an invalid address like 'user@'.

M	src/lib-smtp/smtp-address.c

2019-10-09 00:43:52 +0200 Stephan Bosch <stephan.bosch@open-xchange.com> (83d1b7b3f)

    lib-smtp: Reformat test-smtp-params.c.


M	src/lib-smtp/test-smtp-params.c

2019-10-08 23:11:34 +0200 Stephan Bosch <stephan.bosch@open-xchange.com> (e8f75183f)

    lib-smtp: Reformat smtp-params.h.


M	src/lib-smtp/smtp-params.h

2019-10-08 23:11:00 +0200 Stephan Bosch <stephan.bosch@open-xchange.com> (bd4916844)

    lib-smtp: Reformat smtp-params.c.


M	src/lib-smtp/smtp-params.c

2019-10-31 09:07:42 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (aa52ae31c)

    lib-http: http-url - Fix handling of double slash in request target URL.

    A origin-form URL starting with double slash caused the initial path segment
    to be erroneously recognized as the URL authority, making the path part 
    unexpectedly empty (NULL). This could cause the HTTP server to crash.

M	src/lib-http/http-url.c
M	src/lib-http/test-http-request-parser.c
M	src/lib-http/test-http-url.c

2019-10-31 09:33:31 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (379c4c2e2)

    lib-http: test-http-request-parser - Test equality of target URL paths in
    valid tests.


M	src/lib-http/test-http-request-parser.c

2019-10-31 09:23:23 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (d6672f288)

    lib-http: test-http-request-parser - Split off test_http_request_equal()
    from test_http_request_parse_valid().


M	src/lib-http/test-http-request-parser.c

2019-10-30 22:39:36 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (57dacfc9e)

    lib-http: test-http-url - Split off test_http_url_equal() from
    test_http_url_valid().


M	src/lib-http/test-http-url.c

2019-10-30 09:54:16 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (c2ca58260)

    lib-http: http-url - Split off http_url_parse_fragment() from
    http_url_do_parse().


M	src/lib-http/http-url.c

2019-10-30 09:48:38 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (b24989004)

    lib-http: http-url - Split off http_url_parse_query() from
    http_url_do_parse().


M	src/lib-http/http-url.c

2019-10-30 09:38:49 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (f136e7322)

    lib-http: http-url - Split off http_url_parse_path() from
    http_url_do_parse().


M	src/lib-http/http-url.c

2019-10-30 08:53:32 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (feefb3790)

    lib-http: http-url - Split off http_url_parse_scheme() from
    http_url_do_parse().


M	src/lib-http/http-url.c

2019-10-30 08:58:00 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (1cd1d2b59)

    lib-http: http-url - Split off http_url_parse_unknown_scheme() from
    http_url_do_parse().


M	src/lib-http/http-url.c

2019-10-30 00:58:53 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (044cbd267)

    lib-http: http-url - Split off http_url_parse_userinfo() from
    http_url_parse_authority().


M	src/lib-http/http-url.c

2019-10-31 01:18:27 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (27c39ea71)

    lib-http: Reformat test-http-request-parser.c.


M	src/lib-http/test-http-request-parser.c

2019-10-30 22:34:02 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (b014c0973)

    lib-http: Reformat test-http-url.c.


M	src/lib-http/test-http-url.c

2019-10-30 00:47:37 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (93f641142)

    lib-http: Reformat http-url.c.


M	src/lib-http/http-url.c

2019-10-30 00:38:43 +0100 Stephan Bosch <stephan.bosch@open-xchange.com> (2d5a332e1)

    lib-http: Reformat http-url.h.


M	src/lib-http/http-url.h

2019-10-29 13:44:50 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (317fef0d5)

    lib-mail: message-snippet - Use i_isspace

    This way we catch all the whitespace

M	src/lib-mail/message-snippet.c

2019-10-29 15:11:18 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (36383e3b1)

    lib-mail: Treat > as quote for HTML mails too


M	src/lib-mail/message-snippet.c
M	src/lib-mail/test-message-snippet.c

2019-10-29 12:40:31 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (74063ed82)

    lib-mail: Use quoted text as snippet if there is nothing else


M	src/lib-mail/message-snippet.c
M	src/lib-mail/test-message-snippet.c

2019-10-29 14:55:10 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (99c6549ba)

    lib-mail: message-snippet - Add snippet_add_content

    Simplifies next commit

M	src/lib-mail/message-snippet.c

2019-10-29 14:50:05 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (aab0ec3f8)

    lib-mail: message-snippet - Use struct for snippet

    Simplifies next change

M	src/lib-mail/message-snippet.c

2019-10-29 12:39:16 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (b02574e0e)

    lib-mail: Include blockquotes as quotes in plain text

    <blockquote>This is now preserved</blockquote> which is fine

    renders as

    > this is now preserved which is fine

M	src/lib-mail/mail-html2text.c
M	src/lib-mail/test-mail-html2text.c

2019-10-29 13:44:08 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (aaa7d8a08)

    lib-mail: mail-html2text - Drop unused ignore_next_text


M	src/lib-mail/mail-html2text.c

2019-10-29 14:15:07 +0200 Aki Tuomi <aki.tuomi@open-xchange.com> (a36d7ea7c)

    lib-mail: mail-html2text - Do not add space after newline


M	src/lib-mail/mail-html2text.c

2019-09-14 12:59:06 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (b907ec5c0)

    login-proxy: Fix potential crash if ssl_iostream_handshake() fails

    The error was uninitialized, which could have caused a crash when it was 
    logged (or just "(null)" printed with better luck).

M	src/login-common/login-proxy.c

2019-10-24 19:17:23 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (5eadcfc9f)

    lib-storage: Attachment detection shouldn't cause mime.parts parsing when
    copying mails


M	src/lib-storage/mail-storage.c

2019-10-24 10:56:06 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (52e5b25bc)

    lib-storage: Create vsize records already when building the initial vsize
    header

    This way they aren't first added to cache as size.virtuals, but immediately 
    added as vsize extension records.

M	src/lib-storage/index/index-mailbox-size.c

2019-10-24 10:55:22 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (ee5ad856f)

    lib-storage: Use latest index map when checking if vsize records should be
    created

    The current view's map may not be completely up-to-date. Required by the 
    following commit.

M	src/lib-storage/index/index-mail.c

2019-10-22 19:59:43 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (096a532f2)

    lib-storage: Copy vsize record even when destination mailbox doesn't have it

    It's almost guaranteed that if the source mailbox has vsize then we want the 
    destination mailbox to also have it. This condition now happens mainly when 
    copying mails to a newly created mailbox where the vsize lookups haven't 
    occurred yet. It's better to do this immediately to avoid unnecessarily slow 
    lookups later on.

M	src/lib-storage/index/index-storage.c

2019-10-22 19:58:23 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (68abe6321)

    lib-storage: Fix copying vsize record when copying mails

    Broken by 153ab952f77ed25b71fa4fa9774ff3e3a776b91c

M	src/lib-storage/index/index-storage.c

2019-10-20 13:53:18 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (76e8ff284)

    lib: ostream-multiplex - Change o_stream_multiplex_sendv() to return void

    It was always returning 0.

M	src/lib/ostream-multiplex.c

2019-10-20 13:52:25 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (7da12324d)

    lib: ostream-multiplex - Make sure stream gets uncorked always


M	src/lib/ostream-multiplex.c

2019-10-20 13:48:22 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (ec817bb21)

    dsync: Fix potential hang when initializing remote dsync

    The initial dsync handshake TCP packet could be in the same packet as the 
    previous doveadm command. This started happening more often with the recent
    multiplex ostream corking changes in 
    f284865285ae461b293c713e03277cfbb6973eca

M	src/doveadm/dsync/dsync-ibc-stream.c

2019-10-17 13:14:41 +0300 Aki Tuomi <aki.tuomi@open-xchange.com> (ebeed2738)

    doveadm-mail-server: Initialize port to doveadm_port

    Forgotten in 8048fa8e46c1c8cfc1f29837512cc7d49fafa4da

M	src/doveadm/doveadm-mail-server.c

2019-10-15 14:33:25 +0300 Aki Tuomi <aki.tuomi@open-xchange.com> (ed6cfb31e)

    doveadm: Add doveadm_ssl setting


M	src/doveadm/doveadm-mail-server.c
M	src/doveadm/doveadm-settings.c
M	src/doveadm/doveadm-settings.h

2019-10-15 13:32:23 +0300 Aki Tuomi <aki.tuomi@open-xchange.com> (8048fa8e4)

    doveadm-mail-server: Support proxy fields properly


M	src/doveadm/doveadm-mail-server.c
M	src/doveadm/doveadm-server.h
M	src/doveadm/server-connection.c

2019-10-13 20:38:12 +0300 Aki Tuomi <aki.tuomi@open-xchange.com> (923a01165)

    doveadm: Add STARTTLS support


M	src/doveadm/client-connection-tcp.c
M	src/doveadm/doveadm-util.h
M	src/doveadm/server-connection.c

2019-10-13 21:06:12 +0300 Aki Tuomi <aki.tuomi@open-xchange.com> (34d900534)

    doveadm: Setup ssl connection when ssl_flags require it


M	src/doveadm/doveadm-dsync.c
M	src/doveadm/doveadm-server.h
M	src/doveadm/server-connection.c

2019-10-14 12:28:46 +0300 Aki Tuomi <aki.tuomi@open-xchange.com> (61734c9cf)

    doveadm: Do not block fd after command

    It is not useful and breaks SSL

M	src/doveadm/client-connection-tcp.c

2019-10-13 11:01:53 +0200 Stephan Bosch <stephan.bosch@open-xchange.com> (9fd62ffaa)

    lib: istream - Fix calling i_stream_nonseekable_try_seek() without
    intermittent reads.

    Calling i_stream_nonseekable_try_seek() sets stream->high_pos when seeking
    back within buffer. Once i_stream_read_memarea() is called, the pos is set
    to high_pos and the high pos is cleared. However, when no read is performed
    in the mean time, another call to i_stream_nonseekable_try_seek() would
    overwrite the high_pos value with pos, causing the true value to get lost,
    leading to all kinds of issues. This is fixed by checking whether high_pos
    is already set and not touching it when it is (first value is the only valid
    one).

    One issue this caused is that the mbox storage would no longer work with 
    compression, triggering `unexpected EOF' errors.

M	src/lib/istream.c

2019-10-10 10:34:29 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (2461c221b)

    doveadm mailbox cache remove: Require search query parameter

    Don't treat nonexistent search query the same as ALL.

M	src/doveadm/doveadm-mail-mailbox-cache.c

2019-10-08 16:14:15 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (4bc94bc7d)

    *-login: Fix potential hangs with SSL connections

    1) Multi-step SASL authentication could hang when login process waits for 
    response from a client, but it has already pipelined it together with the 
    AUTH/AUTHENTICATE command.

    2) After failed authentication commands could start hanging.

M	src/login-common/client-common-auth.c

2019-06-13 16:39:42 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (93c8cf0e9)

    lib: backtrace_append() - If libunwind returns failure, fallback to libc's
    method


M	src/lib/backtrace-string.c

2019-09-30 23:00:37 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (cd8782bb7)

    lib: backtrace_get/append() - skip stack frames only based name

    It's not really safe to do anything else because functions may potentially 
    be inlined.

M	src/lib/backtrace-string.c
M	src/lib/test-backtrace.c

2019-09-30 22:52:50 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (c235790a5)

    lib: test-backtrace - Remove unnecessary includes


M	src/lib/test-backtrace.c

2019-06-13 16:37:34 +0300 Timo Sirainen <timo.sirainen@open-xchange.com> (4b353d1f8)

    lib: backtrace_append() - If libunwind fails to get any symbols, return
    error


