]>
git.ipfire.org Git - thirdparty/dovecot/core.git/log
Timo Sirainen [Sun, 26 Apr 2020 18:17:53 +0000 (21:17 +0300)]
lib-dict: Add "user" field to dict_* events if it's not empty
Stephan Bosch [Mon, 20 Apr 2020 22:16:05 +0000 (00:16 +0200)]
lib-http: test-http-payload - Fix dead assignments.
Found by Clang scan-build.
Stephan Bosch [Sat, 25 Apr 2020 11:24:59 +0000 (13:24 +0200)]
lib-http: test-http-payload - Remove useless and confusing break statements.
Stephan Bosch [Mon, 20 Apr 2020 22:13:16 +0000 (00:13 +0200)]
lib: ostream-wrapper - Fix dead assignments.
Found by Clang scan-build.
Markus Valentin [Thu, 2 Apr 2020 15:21:22 +0000 (17:21 +0200)]
auth: Add tests for some auth-mechanisms
This adds tests for many auth-mechanisms and checks for empty
inputs as well as for some broken input combinations.
Markus Valentin [Tue, 7 Apr 2020 10:56:46 +0000 (12:56 +0200)]
auth: mech-otp: Add mech_otp_deinit and call it in main_deinit
This change make sure the otp_lock_table is destroyed on deinit.
Markus Valentin [Wed, 1 Apr 2020 08:42:56 +0000 (10:42 +0200)]
lib-test: test-common: Add test_assert_strcmp_idx macro
This change allows to use test_assert_strcmp_idx to identify failing
strcmp tests when running a barrage of tests as in loop.
Markus Valentin [Thu, 2 Apr 2020 06:38:32 +0000 (08:38 +0200)]
auth: Extract private header from mech-digest-md5
This is needed to allow testing of the mech-digest-md5 mechanism.
Markus Valentin [Tue, 31 Mar 2020 12:57:38 +0000 (14:57 +0200)]
auth: Move auths array from static source to extern in header
This is needed for better testability of auth-mechanisms.
Markus Valentin [Fri, 27 Mar 2020 12:59:44 +0000 (13:59 +0100)]
auth: Use stats from auth_settings to check wether stats should be used
This allows to run unit-tests without the need to setup stats.
Markus Valentin [Fri, 27 Mar 2020 10:05:22 +0000 (11:05 +0100)]
auth: Introduce several callbacks in auth-request-handler
This adds three callbacks and their default implementations. This
change is meant to decouple the code for better testability of
auth-mechanims.
Markus Valentin [Fri, 27 Mar 2020 10:04:20 +0000 (11:04 +0100)]
auth: Extract auth-request-handler struct definition to private header
Markus Valentin [Thu, 26 Mar 2020 14:26:54 +0000 (15:26 +0100)]
auth: Add checks for NULs for different auth-mechanisms
This change adds a check to for NULs in the authentication
input in different auth mechanisms. For this purpose the different
mechanisms use the newly introduced auth_request_fail_on_nuls
function.
Markus Valentin [Wed, 25 Mar 2020 12:48:13 +0000 (13:48 +0100)]
auth: Fail authentication if username/password contains NULs
In mech-plain and mech-dovecot-token the number of NULs splitting the
fields could have been higher then expected. This change ensures that if
there are more then the expected amount of NULs the authentication will
fail.
Aki Tuomi [Mon, 20 Apr 2020 11:57:07 +0000 (14:57 +0300)]
lib-smtp: smtp-client-connection - Try all IPs when connecting to remote host
Aki Tuomi [Mon, 20 Apr 2020 19:35:55 +0000 (22:35 +0300)]
submission: Use dns-client
Timo Sirainen [Mon, 20 Apr 2020 18:45:06 +0000 (21:45 +0300)]
lib-master, global: master_service_init_log() - Remove prefix parameter
Generate the prefix automatically from the configured service name.
Timo Sirainen [Mon, 20 Apr 2020 18:41:39 +0000 (21:41 +0300)]
global: Use master_service_init_log_with_prefix() where explicit prefix is wanted
Timo Sirainen [Mon, 20 Apr 2020 18:41:05 +0000 (21:41 +0300)]
lib-master: Add master_service_init_log_with_prefix()
Timo Sirainen [Mon, 20 Apr 2020 18:32:13 +0000 (21:32 +0300)]
indexer-worker: Add PID to log prefix
Timo Sirainen [Mon, 20 Apr 2020 18:32:32 +0000 (21:32 +0300)]
global: Use master_service_init_log_with_pid() where possible
Timo Sirainen [Mon, 20 Apr 2020 18:28:40 +0000 (21:28 +0300)]
lib-master: Add master_service_init_log_with_pid()
Timo Sirainen [Tue, 14 Apr 2020 16:37:02 +0000 (19:37 +0300)]
lib-master: Use service name from master for log prefixes and for service:<name> category
This makes it easier to differentiate between different services using the
same executable. Especially auth vs auth-worker events which might
otherwise be the same except for the service:<name> category.
Timo Sirainen [Tue, 14 Apr 2020 16:26:46 +0000 (19:26 +0300)]
master: Add SERVICE_NAME=<name> environment to child service processes
Timo Sirainen [Tue, 14 Apr 2020 16:21:43 +0000 (19:21 +0300)]
dns: Rename dns_client service to dns-client
This makes it consistent with all other services.
This commit also adds it to the old-set-parser, so the old service name
still works but gives a warning.
Timo Sirainen [Mon, 20 Apr 2020 16:27:00 +0000 (19:27 +0300)]
lib-ssl-iostream: Include setting name in all key parsing errors
Timo Sirainen [Wed, 15 Apr 2020 12:59:09 +0000 (15:59 +0300)]
lib-ssl-iostream: Improve error messages for ssl_client_ca_* parsing errors
Timo Sirainen [Wed, 15 Apr 2020 12:57:29 +0000 (15:57 +0300)]
lib-ssl-iostream: Split off load_ca_locations()
Timo Sirainen [Wed, 15 Apr 2020 12:52:45 +0000 (15:52 +0300)]
lib-ssl-iostream: Add setting names to most SSL setting parsing errors
Timo Sirainen [Wed, 15 Apr 2020 12:43:12 +0000 (15:43 +0300)]
lib-ssl-iostream: If certificate is empty, say it clearly in the error message
Instead of "There is no valid PEM certificate" just say
"The certificate is empty".
Timo Sirainen [Mon, 20 Apr 2020 15:32:57 +0000 (18:32 +0300)]
lib-master: Fix MASTER_SERVICE_FLAG_USE_SSL_SETTINGS when running standalone
Timo Sirainen [Mon, 20 Apr 2020 15:07:58 +0000 (18:07 +0300)]
lib-master: MASTER_SERVICE_FLAG_USE_SSL_SETTINGS no longer initialized SSL server
Timo Sirainen [Mon, 20 Apr 2020 15:02:21 +0000 (18:02 +0300)]
*-login, lmtp: Enable MASTER_SERVICE_FLAG_HAVE_STARTTLS
Timo Sirainen [Mon, 20 Apr 2020 15:01:21 +0000 (18:01 +0300)]
lib-master: Add MASTER_SERVICE_FLAG_HAVE_STARTTLS
Timo Sirainen [Mon, 20 Apr 2020 11:49:35 +0000 (14:49 +0300)]
login-proxy: "Started proxying to ..." - Use uppercase for the first letter
Other log messages start uppercased as well.
Timo Sirainen [Thu, 9 Apr 2020 21:31:41 +0000 (00:31 +0300)]
login-proxy: Remove unnecessary "disconnecting" text from log message
Add "Disconnected by proxy: " prefix explicitly for the few reasons why
the proxy itself is causing the disconnection.
Timo Sirainen [Thu, 9 Apr 2020 21:27:40 +0000 (00:27 +0300)]
login-proxy: Add ip:port to log prefix and remove them from log messages
Timo Sirainen [Thu, 9 Apr 2020 21:10:55 +0000 (00:10 +0300)]
login-proxy: Check for missing host IP address earlier
Also fail if "hostip" is returned by passdb but it's not a valid IP address.
Timo Sirainen [Thu, 9 Apr 2020 21:07:04 +0000 (00:07 +0300)]
login-proxy: login_proxy_new() - Change host check to assert
It's already checked by the only caller.
Timo Sirainen [Thu, 9 Apr 2020 20:52:01 +0000 (23:52 +0300)]
login-proxy: login_proxy_free*() - Add asserts to make sure error always exists when needed
Only detached proxies log the error.
Timo Sirainen [Thu, 9 Apr 2020 18:12:25 +0000 (21:12 +0300)]
login-proxy: Remove login_proxy_free_reason/delayed()
Just use login_proxy_free_full() directly.
Timo Sirainen [Thu, 9 Apr 2020 18:09:26 +0000 (21:09 +0300)]
login-proxy: login_proxy_free_full() - Replace bool delayed with enum
Timo Sirainen [Thu, 9 Apr 2020 18:07:48 +0000 (21:07 +0300)]
login-proxy: Add missing space between disconnect reason and "(extra info)"
Timo Sirainen [Thu, 9 Apr 2020 18:00:30 +0000 (21:00 +0300)]
login-proxy: Clarify error messages when disconnecting from server before login is finished
Timo Sirainen [Thu, 9 Apr 2020 21:22:39 +0000 (00:22 +0300)]
login-common: client_disconnect() - Log with login_proxy event if it exists
Timo Sirainen [Thu, 9 Apr 2020 20:24:36 +0000 (23:24 +0300)]
*-login: Use login_proxy.event for logging
This way there's no need to have the "proxy: " or "proxy(user): " prefix.
This also standardizes it to always be "proxy(user): ".
Timo Sirainen [Thu, 9 Apr 2020 20:19:13 +0000 (23:19 +0300)]
login-proxy: Add login_proxy_get_event()
Timo Sirainen [Thu, 9 Apr 2020 19:57:49 +0000 (22:57 +0300)]
login-proxy: Add event to login_proxy
Timo Sirainen [Thu, 9 Apr 2020 20:15:05 +0000 (23:15 +0300)]
login-proxy: Split off proxy_check_start()
Timo Sirainen [Thu, 9 Apr 2020 20:12:03 +0000 (23:12 +0300)]
login-proxy: Remove client->refcount > 1 assert
There doesn't seem to be any point in having this assert. Nothing seems
to require that it's over 1.
Timo Sirainen [Thu, 9 Apr 2020 20:08:39 +0000 (23:08 +0300)]
login-proxy: Remove dead code checking if client is destroyed
The beginning of the function already assert-crashes if client is destroyed
and nothing in the code path can destroy the client.
Timo Sirainen [Thu, 9 Apr 2020 21:37:34 +0000 (00:37 +0300)]
login-common: Replace i_error() with e_error() where possible
Timo Sirainen [Thu, 9 Apr 2020 19:51:17 +0000 (22:51 +0300)]
login-common: Remove client_log*() functions
Timo Sirainen [Thu, 9 Apr 2020 19:50:26 +0000 (22:50 +0300)]
*-login: Use e_error() instead of client_log_err()
Timo Sirainen [Thu, 9 Apr 2020 19:43:34 +0000 (22:43 +0300)]
*-login: Use e_info() instead of client_log()
Timo Sirainen [Thu, 9 Apr 2020 19:40:42 +0000 (22:40 +0300)]
login-common: Use e_warning() instead of client_log_warn()
Timo Sirainen [Thu, 9 Apr 2020 19:39:04 +0000 (22:39 +0300)]
login-common: Log via e_info/warning/error() functions
Timo Sirainen [Thu, 9 Apr 2020 19:19:48 +0000 (22:19 +0300)]
login-common: Add event to client
Timo Sirainen [Thu, 9 Apr 2020 19:26:57 +0000 (22:26 +0300)]
login-common: Split off args_parse_user()
Timo Sirainen [Thu, 9 Apr 2020 19:11:54 +0000 (22:11 +0300)]
*-login: Add event category to login_binary
Timo Sirainen [Mon, 20 Apr 2020 09:26:06 +0000 (12:26 +0300)]
*-login: Change struct login_binary to be non-const
Required by the next commit.
Timo Sirainen [Thu, 9 Apr 2020 18:57:36 +0000 (21:57 +0300)]
login-proxy: Remove unused login_proxy.disconnecting field
Timo Sirainen [Tue, 14 Apr 2020 12:38:56 +0000 (15:38 +0300)]
lib: ostream-multiplex - Fix flush callback handling
Using flush-callbacks didn't work very well. Even if it wasn't overridden,
it could have caused a hang if there was data left inside the internal
buffer that couldn't be flushed to parent ostream. At the end of the
ostream there was nothing that triggered flushing the internal buffer.
Timo Sirainen [Tue, 14 Apr 2020 12:37:44 +0000 (15:37 +0300)]
lib: ostream-multiplex - o_stream_send*(): Return 0 if buffer is full, not -2
-2 is only for istreams.
Fixes:
Panic: file ostream.c: line 281 (o_stream_sendv_int): assertion failed: (stream->stream_errno != 0)
Martti Rannanjärvi [Mon, 20 Apr 2020 10:48:29 +0000 (13:48 +0300)]
lib-smtp: Allow running make check as root
This is to allow running make check on Debian fakeroot.
Martti Rannanjärvi [Mon, 20 Apr 2020 10:46:38 +0000 (13:46 +0300)]
lib-smtp: Add allow_root flag to smtp_submit_input and smtp_submit_session
This is to make it possible to run make check on Debian fakeroot later.
Stephan Bosch [Wed, 22 Apr 2020 10:54:44 +0000 (12:54 +0200)]
stats: stats-service-openmetrics - Check label for group_by metric at correct location.
Aki Tuomi [Wed, 22 Apr 2020 10:39:32 +0000 (13:39 +0300)]
stats: openmetrics - Use json_append_escaped
It does the job exactly as openmetrics specs say.
Aki Tuomi [Wed, 22 Apr 2020 11:49:30 +0000 (14:49 +0300)]
stats: metrics - Sanitize sub_name before appending to ostream
Aki Tuomi [Wed, 22 Apr 2020 11:48:28 +0000 (14:48 +0300)]
stats: metrics - Use str_sanitize_utf8 to create submetric name
This was before sanitized to ascii letters and numbers. It is
foreseeable that e.g. usernames can contain utf-8 in future
so better retain it as utf-8 here.
Timo Sirainen [Sat, 18 Apr 2020 18:36:10 +0000 (21:36 +0300)]
submission-login: Fix printf type for SIZE in HELO reply
Fixes compiler warning with 32bit systems.
Timo Sirainen [Sat, 18 Apr 2020 18:35:04 +0000 (21:35 +0300)]
lib-index: Fix signedness compiler warning with 32bit
Timo Sirainen [Mon, 20 Apr 2020 08:44:03 +0000 (11:44 +0300)]
stats: Add missing stats_startup_time global variable to unit tests
It's not currently actually used, but this fixes linking
--without-shared-libs
Timo Sirainen [Mon, 20 Apr 2020 08:53:38 +0000 (11:53 +0300)]
stats: Change stats_settings to be static
Timo Sirainen [Mon, 20 Apr 2020 08:53:00 +0000 (11:53 +0300)]
stats: client_http_init() - Add stats_settings parameter
Stephan Bosch [Tue, 10 Mar 2020 23:43:07 +0000 (00:43 +0100)]
stats: stats-service-openmetrics - Add histogram support.
Stephan Bosch [Fri, 22 Nov 2019 18:55:48 +0000 (19:55 +0100)]
stats: stats-service-openmetrics - Make composition of response payload scalable.
Use the new HTTP server response payload ostream API.
Stephan Bosch [Fri, 22 Nov 2019 18:55:48 +0000 (19:55 +0100)]
stats: stats-service-openmetrics - Restructure metrics export for incremental output.
This way, the string buffer can be written to an output stream after every
exported (sub-) metric.
Stephan Bosch [Wed, 11 Mar 2020 18:29:15 +0000 (19:29 +0100)]
stats: stats-service-openmetrics - Fix code duplication between count and duration output metrics.
Stephan Bosch [Thu, 12 Mar 2020 15:04:38 +0000 (16:04 +0100)]
stats: stats-service-openmetrics - Record has_submetric status in request context.
Stephan Bosch [Wed, 11 Mar 2020 18:45:51 +0000 (19:45 +0100)]
stats: stats-service-openmetrics - Use basic request struct for context data.
Stephan Bosch [Wed, 11 Mar 2020 17:24:34 +0000 (18:24 +0100)]
stats: stats-service-openmetrics - Export Dovecot base metrics in a separate function.
Stephan Bosch [Sat, 23 Nov 2019 11:21:48 +0000 (12:21 +0100)]
stats: stats-service-openmetrics - Rename resp to hsresp in stats_service_openmetrics_request().
Stephan Bosch [Sat, 23 Nov 2019 11:19:14 +0000 (12:19 +0100)]
stats: stats-service-openmetrics - Rename req to hsreq in stats_service_openmetrics_request().
Stephan Bosch [Wed, 11 Mar 2020 19:04:25 +0000 (20:04 +0100)]
stats: Reformat stats-service-openmetrics.c.
Aki Tuomi [Thu, 12 Mar 2020 09:48:28 +0000 (11:48 +0200)]
stats: Do not export base metric with sub-metrics on prometheus
This can confuse prometheus.
Stephan Bosch [Fri, 15 Nov 2019 21:00:13 +0000 (22:00 +0100)]
lib-http: http_server_response_send_payload() - Reimplement with the new ostream API.
This considerably simplifies the code.
Stephan Bosch [Mon, 11 Nov 2019 22:35:17 +0000 (23:35 +0100)]
lib-http: test-http-server-errors - Add tests for the new asynchronous payload output stream API.
Stephan Bosch [Thu, 14 Nov 2019 00:00:03 +0000 (01:00 +0100)]
lib-http: test-http-payload - Add tests for the new asynchronous server payload output stream API.
Stephan Bosch [Mon, 11 Nov 2019 20:53:09 +0000 (21:53 +0100)]
lib-http: http-server-response - Replace payload output stream API implementation.
It now supports both blocking and non-blocking behavior.
Stephan Bosch [Sun, 25 Nov 2018 20:24:07 +0000 (21:24 +0100)]
lib: Create wrapper output stream.
This allows creating the stream before the actual output is available, thereby
wrapping the whole process of making a connection, doing protocol handshakes,
and submitting the request. Once there's an actual output stream, data from the
wrapper stream can be sent. Until that time, the wrapper will block or return 0
(based on whether it is blocking or not).
The wrapper stream is a partial implementation that needs to be completed (by in
heritance) by the respective protocol implementation.
Stephan Bosch [Fri, 13 Mar 2020 23:57:48 +0000 (00:57 +0100)]
lib-http: http-server-connection - Hold immune request reference while sending response.
Stephan Bosch [Fri, 13 Mar 2020 23:39:38 +0000 (00:39 +0100)]
lib-http: http-server-connection - When connection is closed, abort requests with provided reason.
Stephan Bosch [Fri, 13 Mar 2020 22:55:50 +0000 (23:55 +0100)]
lib-http: http-server-request - Add http_server_request_immune_ref/unref() and use the new API.
Makes the request immune to http_server_request_destroy() until the last immune
reference is dropped. The destruction is only delayed, so destroy is implicit
once the last immune reference is dropped.
Stephan Bosch [Fri, 13 Mar 2020 23:41:10 +0000 (00:41 +0100)]
lib-http: http-server-request - Notify response about request destroy before destroy callback is called.
Stephan Bosch [Sat, 14 Mar 2020 11:21:15 +0000 (12:21 +0100)]
lib-http: http-server-request - Don't destroy anything when request destroy is delayed.
Stephan Bosch [Fri, 13 Mar 2020 23:30:20 +0000 (00:30 +0100)]
lib-http: http-server-request - Log reason in http_server_request_abort() debug message.
Stephan Bosch [Mon, 11 Nov 2019 17:47:18 +0000 (18:47 +0100)]
lib-http: http-server-connection - Significantly simplify destroying the request payload stream.
Stephan Bosch [Sun, 17 Nov 2019 23:34:50 +0000 (00:34 +0100)]
lib-http: http-server-response - Fix management of connection idle timeout.
Stephan Bosch [Mon, 11 Nov 2019 16:45:35 +0000 (17:45 +0100)]
lib-http: http-server-response - Add response reference counting API.
Uses request reference counting internally. This is just a convenience API.