]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
7 years agolib-storage: mailbox_list_index - List prefix/INBOX if it necessary
Timo Sirainen [Wed, 13 Dec 2017 23:39:32 +0000 (01:39 +0200)] 
lib-storage: mailbox_list_index - List prefix/INBOX if it necessary

7 years agoLAYOUT=fs: Fix listing prefix/INBOX
Timo Sirainen [Wed, 13 Dec 2017 23:36:50 +0000 (01:36 +0200)] 
LAYOUT=fs: Fix listing prefix/INBOX

Removed some confusing special case code that didn't seem to work very well.
Implemented this now properly so that prefix/INBOX is listed as \NoSelect
mailbox whenever it has children.

It's not actually possible to differentiate between INBOX and prefix/INBOX
in the storage for a inbox=yes namespace, because they both are converted
into the same storage_name=INBOX.

7 years agoLAYOUT=fs: List INBOX as \NoInferiors when necessary
Timo Sirainen [Wed, 13 Dec 2017 23:34:25 +0000 (01:34 +0200)] 
LAYOUT=fs: List INBOX as \NoInferiors when necessary

7 years agoLAYOUT=index: List INBOX as \NoInferiors when necessary
Timo Sirainen [Wed, 13 Dec 2017 23:31:10 +0000 (01:31 +0200)] 
LAYOUT=index: List INBOX as \NoInferiors when necessary

7 years agoLAYOUT=Maildir++: List INBOX as \NoInferiors when necessary
Timo Sirainen [Wed, 13 Dec 2017 23:23:45 +0000 (01:23 +0200)] 
LAYOUT=Maildir++: List INBOX as \NoInferiors when necessary

7 years agolib-storage: Add mail_namespace_is_inbox_noinferiors()
Timo Sirainen [Wed, 13 Dec 2017 23:23:01 +0000 (01:23 +0200)] 
lib-storage: Add mail_namespace_is_inbox_noinferiors()

7 years agoimapc: Don't skip listing "INBOX" when INBOX/ namespace prefix is used.
Timo Sirainen [Fri, 8 Dec 2017 14:14:11 +0000 (16:14 +0200)] 
imapc: Don't skip listing "INBOX" when INBOX/ namespace prefix is used.

The INBOX was still listed as part of the autocreated mailboxes, unless
MAILBOX_LIST_ITER_NO_AUTO_BOXES was used.

7 years agolib: mempool-allocfree - make static analyzer happier with pool clearing
Timo Sirainen [Wed, 13 Dec 2017 17:11:02 +0000 (19:11 +0200)] 
lib: mempool-allocfree - make static analyzer happier with pool clearing

It was thinking that already freed memory was being accessed.

7 years agodbox: Fix creating dbox-alt-root symlink when mail root directory doesn't exist
Timo Sirainen [Wed, 13 Dec 2017 18:55:59 +0000 (20:55 +0200)] 
dbox: Fix creating dbox-alt-root symlink when mail root directory doesn't exist

Broken by 74664ac6dcf88cfc2ae6378c87c20ba694385a23

7 years agolib-http: client: peer: Properly handle claiming an existing connection.
Stephan Bosch [Wed, 13 Dec 2017 20:52:41 +0000 (21:52 +0100)] 
lib-http: client: peer: Properly handle claiming an existing connection.

If no other connections were being created, request handling was not restarted.
This problem sometimes caused the client to hang.
Fixed by calling http_client_peer_connection_success() upon claiming an existing connection.

7 years agolib-http: test-http-payload: Terminate the test if it is hanging for some reason.
Stephan Bosch [Wed, 13 Dec 2017 17:16:07 +0000 (18:16 +0100)] 
lib-http: test-http-payload: Terminate the test if it is hanging for some reason.

7 years agolib-http: test-http-payload: Amend shared client tests to do both download and echo...
Stephan Bosch [Wed, 13 Dec 2017 16:27:10 +0000 (17:27 +0100)] 
lib-http: test-http-payload: Amend shared client tests to do both download and echo tests.

Also, the original download tests were named wrong.

7 years agolib-http: test-http-payload: Fixed indent problems.
Stephan Bosch [Wed, 13 Dec 2017 16:29:09 +0000 (17:29 +0100)] 
lib-http: test-http-payload: Fixed indent problems.

7 years agodoveadm stats dump: Add -r parameter to reset stats after dumping
Timo Sirainen [Wed, 13 Dec 2017 12:44:01 +0000 (14:44 +0200)] 
doveadm stats dump: Add -r parameter to reset stats after dumping

7 years agostats: Add DUMP-RESET command to reset stats after dumping them
Timo Sirainen [Wed, 13 Dec 2017 12:43:43 +0000 (14:43 +0200)] 
stats: Add DUMP-RESET command to reset stats after dumping them

7 years agolib-storage: Delay creating mail root directory until it's necessary
Timo Sirainen [Tue, 12 Dec 2017 19:38:46 +0000 (21:38 +0200)] 
lib-storage: Delay creating mail root directory until it's necessary

7 years agolib-storage: Make sure index root is created when it's the same as root directory
Timo Sirainen [Tue, 12 Dec 2017 19:36:07 +0000 (21:36 +0200)] 
lib-storage: Make sure index root is created when it's the same as root directory

This is required by the following commit.

7 years agolib-http: client: Made http_client record the current ioloop it is switched to.
Stephan Bosch [Wed, 9 Aug 2017 18:06:00 +0000 (20:06 +0200)] 
lib-http: client: Made http_client record the current ioloop it is switched to.

This prevents http_client_wait() from switching the client to an ioloop it was never explicitly switched to.

7 years agoimap: Fix o_stream_is_corked() assert check
Timo Sirainen [Wed, 13 Dec 2017 12:19:41 +0000 (14:19 +0200)] 
imap: Fix o_stream_is_corked() assert check

All the callers cork the stream, so this can only mean that the corking
failed because the connection was already closed. Continue handling the
input anyway.

Fixes:
Panic: file imap-client.c: line 1236 (client_handle_input): assertion failed: (o_stream_is_corked(client->output))

7 years agoLAYOUT=index: Fix crash in doveadm force-resync if storage doesn't implement list_ind...
Timo Sirainen [Wed, 13 Dec 2017 13:48:17 +0000 (15:48 +0200)] 
LAYOUT=index: Fix crash in doveadm force-resync if storage doesn't implement list_index_rebuild()

Broken by recent changes.

7 years agoLAYOUT=index: Fix updating STATUS changes in mailbox list index
Timo Sirainen [Tue, 12 Dec 2017 16:10:40 +0000 (18:10 +0200)] 
LAYOUT=index: Fix updating STATUS changes in mailbox list index

Mailbox list index backend code was overriding sync_init and sync_deinit
methods, which STATUS handling had already already overridden. They both
used the same super struct, so STATUS's sync_* were never called.

7 years agolib-master: Fix logging "Expected FILTER" error
Timo Sirainen [Wed, 13 Dec 2017 13:54:40 +0000 (15:54 +0200)] 
lib-master: Fix logging "Expected FILTER" error

7 years agostats: Fix logging unknown client command error
Timo Sirainen [Wed, 13 Dec 2017 13:54:11 +0000 (15:54 +0200)] 
stats: Fix logging unknown client command error

7 years ago.gitignore: Ignore src/old-stats/old-stats
Martti Rannanjärvi [Wed, 13 Dec 2017 12:37:59 +0000 (14:37 +0200)] 
.gitignore: Ignore src/old-stats/old-stats

7 years agolib-http: Add named event: http_request_finished
Timo Sirainen [Mon, 4 Dec 2017 21:39:41 +0000 (23:39 +0200)] 
lib-http: Add named event: http_request_finished

7 years agodoveadm: Add new "stats dump" command
Timo Sirainen [Mon, 4 Dec 2017 19:56:29 +0000 (21:56 +0200)] 
doveadm: Add new "stats dump" command

7 years agoglobal: Enable MASTER_SERVICE_FLAG_SEND_STATS for mail processes
Timo Sirainen [Mon, 4 Dec 2017 19:23:44 +0000 (21:23 +0200)] 
global: Enable MASTER_SERVICE_FLAG_SEND_STATS for mail processes

7 years agolib: connection - When receiving invalid VERSION line, log the line contents
Timo Sirainen [Mon, 4 Dec 2017 18:39:05 +0000 (20:39 +0200)] 
lib: connection - When receiving invalid VERSION line, log the line contents

7 years agolog: Fix restoring global log prefix
Timo Sirainen [Mon, 4 Dec 2017 18:33:58 +0000 (20:33 +0200)] 
log: Fix restoring global log prefix

It was allocated from data stack, which was freed by
master_service_init_finish(). This may have caused wrong prefix to be
used for log's internal error messages, or restoring the global log
prefix could have crashed:

Panic: file strfuncs.c: line 147 (t_noalloc_strdup_vprintf): assertion failed: ((unsigned int)ret == *size_r-1)

7 years agolib-http: client: Replace http_*_debug() with e_debug()
Timo Sirainen [Thu, 7 Dec 2017 22:15:40 +0000 (00:15 +0200)] 
lib-http: client: Replace http_*_debug() with e_debug()

7 years agolib-http: client: Remove redundant debug logging checks
Timo Sirainen [Mon, 4 Dec 2017 10:58:47 +0000 (12:58 +0200)] 
lib-http: client: Remove redundant debug logging checks

7 years agolib-http: client: Add support for event API
Timo Sirainen [Mon, 4 Dec 2017 10:35:46 +0000 (12:35 +0200)] 
lib-http: client: Add support for event API

7 years agolib-http: Cleanup - Add name parameter to http_client_host_create()
Timo Sirainen [Mon, 4 Dec 2017 10:27:00 +0000 (12:27 +0200)] 
lib-http: Cleanup - Add name parameter to http_client_host_create()

7 years agolib-fs: Replace i_error() calls with e_error()
Timo Sirainen [Sun, 3 Dec 2017 17:31:20 +0000 (19:31 +0200)] 
lib-fs: Replace i_error() calls with e_error()

7 years agolib-fs: Add fs_file/iter_init_with_event()
Timo Sirainen [Sun, 3 Dec 2017 17:26:11 +0000 (19:26 +0200)] 
lib-fs: Add fs_file/iter_init_with_event()

Use the event for logging critical errors

7 years agolib-fs: Add fs_file/iter_init_parent()
Timo Sirainen [Mon, 4 Dec 2017 13:06:36 +0000 (15:06 +0200)] 
lib-fs: Add fs_file/iter_init_parent()

7 years agolib-fs: Set fs_iter.flags immediately in fs_iter_init()
Timo Sirainen [Mon, 4 Dec 2017 12:55:01 +0000 (14:55 +0200)] 
lib-fs: Set fs_iter.flags immediately in fs_iter_init()

This way backends don't need to set it.

7 years agolib-fs: Split allocation from fs.iter_init() to a separate fs.iter_alloc()
Timo Sirainen [Mon, 4 Dec 2017 12:53:37 +0000 (14:53 +0200)] 
lib-fs: Split allocation from fs.iter_init() to a separate fs.iter_alloc()

7 years agolib-fs: Split allocation from fs.file_init() to a separate fs.file_alloc()
Timo Sirainen [Mon, 4 Dec 2017 12:43:53 +0000 (14:43 +0200)] 
lib-fs: Split allocation from fs.file_init() to a separate fs.file_alloc()

7 years agolib-master: Add stats-client
Timo Sirainen [Thu, 23 Nov 2017 16:46:23 +0000 (17:46 +0100)] 
lib-master: Add stats-client

Enable it if MASTER_SERVICE_FLAG_SEND_STATS is set

7 years agostats: Add new stats service
Timo Sirainen [Wed, 22 Nov 2017 16:36:09 +0000 (17:36 +0100)] 
stats: Add new stats service

7 years agoimap: Add imap_command_finished event.
Timo Sirainen [Tue, 21 Nov 2017 17:22:38 +0000 (18:22 +0100)] 
imap: Add imap_command_finished event.

This can be used to get per-command statistics.

7 years agoimap: Add client_command_context.event and use it as global event while running
Timo Sirainen [Tue, 21 Nov 2017 15:05:30 +0000 (16:05 +0100)] 
imap: Add client_command_context.event and use it as global event while running

7 years agoimap: Add client.event and use it as mail_*user's parent event
Timo Sirainen [Tue, 21 Nov 2017 14:33:59 +0000 (15:33 +0100)] 
imap: Add client.event and use it as mail_*user's parent event

7 years agolib-index: mail_index_set_error() - log error using index's event
Timo Sirainen [Tue, 21 Nov 2017 12:13:49 +0000 (13:13 +0100)] 
lib-index: mail_index_set_error() - log error using index's event

7 years agolib-index: Add mail_index.event
Timo Sirainen [Tue, 21 Nov 2017 12:13:40 +0000 (13:13 +0100)] 
lib-index: Add mail_index.event

7 years agolib-storage: mail_storage_set_critical() - log error using user's event
Timo Sirainen [Tue, 21 Nov 2017 12:03:03 +0000 (13:03 +0100)] 
lib-storage: mail_storage_set_critical() - log error using user's event

Fix test-storage unit test to also initialize mail_user.event so it won't
crash.

7 years agolib-storage: Add mail.event
Timo Sirainen [Tue, 21 Nov 2017 11:59:40 +0000 (12:59 +0100)] 
lib-storage: Add mail.event

7 years agolib-storage: Add mailbox.event
Timo Sirainen [Tue, 21 Nov 2017 11:51:10 +0000 (12:51 +0100)] 
lib-storage: Add mailbox.event

7 years agolib-storage: Add mail_user.event and give parent event in mail_user_alloc*()
Timo Sirainen [Mon, 20 Nov 2017 18:33:40 +0000 (19:33 +0100)] 
lib-storage: Add mail_user.event and give parent event in mail_user_alloc*()

7 years agolib-storage: Add mail_storage_service_user.event and use it as the global event
Timo Sirainen [Mon, 20 Nov 2017 16:26:42 +0000 (17:26 +0100)] 
lib-storage: Add mail_storage_service_user.event and use it as the global event

The event is set in the same place as where the user's default logging
prefix is changed.

7 years agolib-master: Add log_debug setting
Timo Sirainen [Wed, 22 Nov 2017 14:41:51 +0000 (15:41 +0100)] 
lib-master: Add log_debug setting

lib-master understands only the global log_debug setting, which is passed
to it via environment from master process, or alternatively via doveconf
when executing standalone programs. Any per-user log_debug settings need
to be handled explicitly elsewhere.

7 years agolib: Add event filtering to debug logging
Timo Sirainen [Wed, 22 Nov 2017 13:51:47 +0000 (14:51 +0100)] 
lib: Add event filtering to debug logging

7 years agolib: Add event filter
Timo Sirainen [Wed, 22 Nov 2017 12:55:51 +0000 (13:55 +0100)] 
lib: Add event filter

This currently supports matching events by:

 * name
 * source file:line
 * categories
 * key=value fields

7 years agolib: Add event_import() and event_export()
Timo Sirainen [Mon, 4 Dec 2017 19:20:49 +0000 (21:20 +0200)] 
lib: Add event_import() and event_export()

7 years agolib: Add event API
Timo Sirainen [Mon, 23 Oct 2017 08:18:59 +0000 (11:18 +0300)] 
lib: Add event API

The events are hierarchical and the child events inherit the parents'
fields. The events will be attached to "objects", which gives them some
context. For example each mail user, mailbox and mail will have its own
event. The events can also have a log prefix, so logging events to e.g.
mail will always log a consistent prefix that identifies which mail is
being logged about.

The events will also be used for statistics. Typically this is done by
logging a debug event, which contains fields that are interesting for
statistics. The interesting events will have a name, which can be used
to identify them when configuring which statistics are wanted to be
tracked. It's possible to also track events that have no name, but that
requires using the source code's filename:line as the event name. That
of course may change between releases, so it's not very reliable.

7 years agolib: Add failure_context.log_prefix to override the default
Timo Sirainen [Fri, 17 Nov 2017 10:37:15 +0000 (12:37 +0200)] 
lib: Add failure_context.log_prefix to override the default

7 years agolib: Add i_log_typev()
Timo Sirainen [Mon, 13 Nov 2017 14:08:15 +0000 (16:08 +0200)] 
lib: Add i_log_typev()

7 years agolib: ioloop.h - improve ioloop context comments
Timo Sirainen [Mon, 11 Dec 2017 23:04:29 +0000 (01:04 +0200)] 
lib: ioloop.h - improve ioloop context comments

7 years agolib-storage: Remove mail_storage_service_io_deactivate()
Timo Sirainen [Mon, 11 Dec 2017 23:20:52 +0000 (01:20 +0200)] 
lib-storage: Remove mail_storage_service_io_deactivate()

We now require that ioloop context is always properly deactivated, so
there's no need for the function.

7 years agoimap, pop3: Remove unnecessary call to mail_storage_service_io_deactivate()
Timo Sirainen [Mon, 11 Dec 2017 23:19:04 +0000 (01:19 +0200)] 
imap, pop3: Remove unnecessary call to mail_storage_service_io_deactivate()

The context is automatically deactivated when service user is freed.

7 years agolib-storage: mail_storage_service_io_[de]activate_user() - [de]activate the whole...
Timo Sirainen [Mon, 11 Dec 2017 23:17:22 +0000 (01:17 +0200)] 
lib-storage: mail_storage_service_io_[de]activate_user() - [de]activate the whole ioloop context

7 years agolib-storage: mail_storage_service_user_unref() - deactivate user before removing...
Timo Sirainen [Mon, 11 Dec 2017 23:33:08 +0000 (01:33 +0200)] 
lib-storage: mail_storage_service_user_unref() - deactivate user before removing callbacks

Otherwise the next commit won't work correctly.

7 years agolib-storage: Create ioloop context regardless of logging settings
Timo Sirainen [Mon, 11 Dec 2017 23:12:43 +0000 (01:12 +0200)] 
lib-storage: Create ioloop context regardless of logging settings

This will be needed by the following commits.

7 years agolib: io_loop_context_deactivate() - Assert that given context is currently active
Timo Sirainen [Mon, 11 Dec 2017 23:04:06 +0000 (01:04 +0200)] 
lib: io_loop_context_deactivate() - Assert that given context is currently active

7 years agolib: io_loop_context_new() - deactivate old context
Timo Sirainen [Mon, 11 Dec 2017 23:02:27 +0000 (01:02 +0200)] 
lib: io_loop_context_new() - deactivate old context

Since it changes the current context, it needs to deactivate the old one.

7 years agolib: io_loop_destroy() - Assert-crash if ioloop contet is still set
Timo Sirainen [Mon, 11 Dec 2017 23:01:33 +0000 (01:01 +0200)] 
lib: io_loop_destroy() - Assert-crash if ioloop contet is still set

It may be too late to try to deactivate it at that point, so it points to a
bug.

7 years agolib: Move io_loop_context_[de]activate() to be public
Timo Sirainen [Mon, 11 Dec 2017 22:50:36 +0000 (00:50 +0200)] 
lib: Move io_loop_context_[de]activate() to be public

7 years agolib: timing - Allow changing sample buffer size
Timo Sirainen [Thu, 7 Dec 2017 22:54:51 +0000 (00:54 +0200)] 
lib: timing - Allow changing sample buffer size

7 years agoglobal: Renamed stats plugin and service to old-stats
Timo Sirainen [Tue, 21 Nov 2017 13:46:30 +0000 (14:46 +0100)] 
global: Renamed stats plugin and service to old-stats

7 years agosubmission: remove unnecessary casts
Josef 'Jeff' Sipek [Tue, 12 Dec 2017 17:41:29 +0000 (12:41 -0500)] 
submission: remove unnecessary casts

Casting from a void * to any pointer type is automatic and doesn't
require an explicit cast.

7 years agosubmission-login: use container_of instead of casts
Josef 'Jeff' Sipek [Tue, 12 Dec 2017 16:55:15 +0000 (11:55 -0500)] 
submission-login: use container_of instead of casts

7 years agosubmission-login: remove unnecessary casts
Josef 'Jeff' Sipek [Tue, 12 Dec 2017 16:26:21 +0000 (11:26 -0500)] 
submission-login: remove unnecessary casts

Casting from a void * to any pointer type is automatic and doesn't
require an explicit cast.

7 years agoglobal: drop unnecessary parens in &(foo)
Josef 'Jeff' Sipek [Tue, 12 Dec 2017 16:18:10 +0000 (11:18 -0500)] 
global: drop unnecessary parens in &(foo)

This makes the code more consistent since most of the repo uses the
no-parens style.  These inconsistencies were found using
`git grep '(&([^*]'` and any use of the parens in macros was ignored for
safety reasons.

7 years agoglobal: io_remove*(NULL) is a no-op
Josef 'Jeff' Sipek [Tue, 12 Dec 2017 16:10:15 +0000 (11:10 -0500)] 
global: io_remove*(NULL) is a no-op

7 years agoglobal: timeout_remove(NULL) is a no-op
Josef 'Jeff' Sipek [Mon, 27 Nov 2017 19:11:40 +0000 (14:11 -0500)] 
global: timeout_remove(NULL) is a no-op

7 years agom4: Fix sodium checks
Aki Tuomi [Wed, 13 Dec 2017 08:50:38 +0000 (10:50 +0200)] 
m4: Fix sodium checks

Make sure it actually has password checking function

7 years agosubmission-login: Added default listener for secure submission on port 465 (submissions).
Stephan Bosch [Tue, 12 Dec 2017 20:53:42 +0000 (21:53 +0100)] 
submission-login: Added default listener for secure submission on port 465 (submissions).

This is analogous to pop3s and imaps.
Efforts to standardize the use of this port are almost finished: https://datatracker.ietf.org/doc/draft-ietf-uta-email-deep/

7 years agosubmission-login: Fix NULL dereference occurring at an invalid reply from the backend...
Stephan Bosch [Tue, 12 Dec 2017 20:46:53 +0000 (21:46 +0100)] 
submission-login: Fix NULL dereference occurring at an invalid reply from the backend server.

Problem found by Coverity.

7 years agolib-smtp: fix uoff_t vs. size_t confusion
Josef 'Jeff' Sipek [Tue, 12 Dec 2017 17:18:06 +0000 (12:18 -0500)] 
lib-smtp: fix uoff_t vs. size_t confusion

7 years agoplugins/fts: Return back comment about Server Error.
Sergey Kitov [Tue, 12 Dec 2017 14:07:52 +0000 (16:07 +0200)] 
plugins/fts: Return back comment about Server Error.

7 years agoplugins/fts: Retry all 5xx tika http statuses, not only 500
Sergey Kitov [Tue, 12 Dec 2017 14:06:14 +0000 (16:06 +0200)] 
plugins/fts: Retry all 5xx tika http statuses, not only 500

7 years agodirector: avoid comparison between signed and unsigned ints
Josef 'Jeff' Sipek [Tue, 12 Dec 2017 13:56:31 +0000 (08:56 -0500)] 
director: avoid comparison between signed and unsigned ints

7 years agosubmission: use correct format string for printing uoff_t
Josef 'Jeff' Sipek [Tue, 12 Dec 2017 13:55:58 +0000 (08:55 -0500)] 
submission: use correct format string for printing uoff_t

7 years agoUpdate README regarding supported RFCs.
Stephan Bosch [Mon, 11 Dec 2017 13:18:20 +0000 (14:18 +0100)] 
Update README regarding supported RFCs.

Some were missing and new ones are added by the recent lib-smtp and submission service changes.

7 years agoconfig: Add a warning comment to the generated all-settings.c
Timo Sirainen [Mon, 11 Dec 2017 16:07:35 +0000 (18:07 +0200)] 
config: Add a warning comment to the generated all-settings.c

7 years agodoc: example-config: Fix installation of the example configuration for the submission...
Stephan Bosch [Mon, 11 Dec 2017 19:29:29 +0000 (20:29 +0100)] 
doc: example-config: Fix installation of the example configuration for the submission service.

Forgot to add it to Makefile.am.

7 years agolmtp: Fix segfault occurring in client_read_settings().
Stephan Bosch [Mon, 11 Dec 2017 14:55:32 +0000 (15:55 +0100)] 
lmtp: Fix segfault occurring in client_read_settings().

This problem is caused by recent changes.
The code attempts to access client->conn to obtain connection security info, which is not yet assigned at that point.
It is doubtful whether assigning those security flags is useful at that stage, but it now uses the ssl flag from the master_service_connection instead.

7 years agolmtp: Removed useless ssl_start parameter for client_create().
Stephan Bosch [Mon, 11 Dec 2017 14:53:45 +0000 (15:53 +0100)] 
lmtp: Removed useless ssl_start parameter for client_create().

The same information is already contained in the conn parameter.

7 years agoImplemented SMTP submission proxy service.
Stephan Bosch [Sat, 11 Nov 2017 13:20:59 +0000 (14:20 +0100)] 
Implemented SMTP submission proxy service.

7 years agolib-storage: mail-user: Added more information about the client connection.
Stephan Bosch [Sat, 9 Dec 2017 01:09:35 +0000 (02:09 +0100)] 
lib-storage: mail-user: Added more information about the client connection.

Submission service will need it to pass to the backend MTA in XCLIENT and for creating the "Received:" header.

7 years agolib-master: master-auth: Pass more information about the user connection to the backe...
Stephan Bosch [Sat, 9 Dec 2017 01:34:52 +0000 (02:34 +0100)] 
lib-master: master-auth: Pass more information about the user connection to the backend in struct master_auth_request.

Adds remote and local ports and security information about the connection.
This changes the master-auth protocol incompatibly, so the major version is updated.

7 years agologin-common: Added flag to client that indicates whether connection is secured using...
Stephan Bosch [Sat, 9 Dec 2017 01:33:16 +0000 (02:33 +0100)] 
login-common: Added flag to client that indicates whether connection is secured using SSL specifically.

7 years agolib-storage: mail-user: Changed mail_user_set_vars() to accept struct mail_user_conne...
Stephan Bosch [Sat, 9 Dec 2017 00:52:28 +0000 (01:52 +0100)] 
lib-storage: mail-user: Changed mail_user_set_vars() to accept struct mail_user_connection_data, rather than individual fields.

7 years agolib-storage: Moved connection information in struct mail_user into separate struct...
Stephan Bosch [Sat, 9 Dec 2017 00:29:06 +0000 (01:29 +0100)] 
lib-storage: Moved connection information in struct mail_user into separate struct mail_user_connection_data.

7 years agoimap: cmd-idle: Created local variable for client in idle_add_keepalive_timeout().
Stephan Bosch [Sat, 9 Dec 2017 00:11:53 +0000 (01:11 +0100)] 
imap: cmd-idle: Created local variable for client in idle_add_keepalive_timeout().

7 years agoimap: imap-client-hibernate: Created local variable for mail_user in imap_hibernate_w...
Stephan Bosch [Sat, 9 Dec 2017 00:04:48 +0000 (01:04 +0100)] 
imap: imap-client-hibernate: Created local variable for mail_user in imap_hibernate_write_cmd().

7 years agoimap-urlauth: Allow connections from services other than IMAP.
Stephan Bosch [Mon, 26 Sep 2016 07:25:32 +0000 (09:25 +0200)] 
imap-urlauth: Allow connections from services other than IMAP.

The imap-urlauth service detects the new submission service and assigns the appropriate privileges.
The dovecot-token authentication mechanism provides information on which service connected to it.

7 years agologin-common: Added client_disconnect(), which allows explicitly disconnecting the...
Stephan Bosch [Fri, 10 Nov 2017 16:18:28 +0000 (17:18 +0100)] 
login-common: Added client_disconnect(), which allows explicitly disconnecting the client before it is destroyed.

This is sometimes needed to make sure the SSL layer is closed properly before destroying the underlying connection.

7 years agologin-common: Added support for login services that handle their own input io.
Stephan Bosch [Mon, 26 Sep 2016 17:12:19 +0000 (19:12 +0200)] 
login-common: Added support for login services that handle their own input io.