]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
6 years agolib-storage: Add MAILBOX_FLAG_FSCK to fsck index immediately after opening it
Timo Sirainen [Mon, 14 May 2018 18:31:59 +0000 (21:31 +0300)] 
lib-storage: Add MAILBOX_FLAG_FSCK to fsck index immediately after opening it

This can be used to fix a broken index that is causing mailbox_open() to
fail.

6 years agodbox: cache pop3 order and uidl when saving mails
Josef 'Jeff' Sipek [Wed, 19 Sep 2018 12:50:26 +0000 (15:50 +0300)] 
dbox: cache pop3 order and uidl when saving mails

6 years agolib-storage/index: Add a helper to cache pop3 order and uidl
Josef 'Jeff' Sipek [Wed, 19 Sep 2018 12:49:56 +0000 (15:49 +0300)] 
lib-storage/index: Add a helper to cache pop3 order and uidl

6 years agoglobal: Use uint32_t for pop3 order
Josef 'Jeff' Sipek [Thu, 20 Sep 2018 10:32:46 +0000 (06:32 -0400)] 
global: Use uint32_t for pop3 order

6 years agolib: uri-util: Add tests for URI character escape functions.
Stephan Bosch [Thu, 25 Oct 2018 11:35:52 +0000 (13:35 +0200)] 
lib: uri-util: Add tests for URI character escape functions.

6 years agolib: uri-util: Add functions for escaping (almost) all reserved URI characters.
Stephan Bosch [Thu, 25 Oct 2018 11:34:52 +0000 (13:34 +0200)] 
lib: uri-util: Add functions for escaping (almost) all reserved URI characters.

6 years agolib-storage: Change default postmaster_address setting to "postmaster@<user domain...
Stephan Bosch [Wed, 5 Sep 2018 19:56:42 +0000 (21:56 +0200)] 
lib-storage: Change default postmaster_address setting to "postmaster@<user domain or server hostname>".

The former "postmaster@<user domain>" default would only yield a valid
postmaster address when there is a domain part in the username. The new default
uses a conditional variable expansion choose "%d" when it is not empty and the
new "%{hostname}" otherwise.

6 years agolib-storage: mail-user: Add "%{hostname}" variable expansion.
Stephan Bosch [Wed, 5 Sep 2018 19:24:15 +0000 (21:24 +0200)] 
lib-storage: mail-user: Add "%{hostname}" variable expansion.

6 years agolib-storage: mail-user: Add convenience functions for obtaining postmaster address.
Stephan Bosch [Wed, 5 Sep 2018 19:23:05 +0000 (21:23 +0200)] 
lib-storage: mail-user: Add convenience functions for obtaining postmaster address.

6 years agolib-storage: Move postmaster_address setting from mail_storage_settings to mail_user_...
Stephan Bosch [Wed, 5 Sep 2018 19:11:15 +0000 (21:11 +0200)] 
lib-storage: Move postmaster_address setting from mail_storage_settings to mail_user_settings.

6 years agoauth: test-lua - Add test to ensure that values are not converted to number by mistake
Aki Tuomi [Mon, 29 Oct 2018 08:43:10 +0000 (10:43 +0200)] 
auth: test-lua - Add test to ensure that values are not converted to number by mistake

6 years agoauth: test-lua - Fix unit test to handle errors
Aki Tuomi [Mon, 29 Oct 2018 08:42:36 +0000 (10:42 +0200)] 
auth: test-lua - Fix unit test to handle errors

6 years agoauth: test-lua - Fix inconsistent whitespace
Aki Tuomi [Mon, 29 Oct 2018 12:43:11 +0000 (14:43 +0200)] 
auth: test-lua - Fix inconsistent whitespace

6 years agoauth: db-lua - Use lua_type to detect type
Aki Tuomi [Mon, 29 Oct 2018 07:52:37 +0000 (09:52 +0200)] 
auth: db-lua - Use lua_type to detect type

Using lua_isnumber to detect numbers also considers
convertible strings as numbers.

6 years agoauth: Store password with auth_set_field in Lua passdb
Aki Tuomi [Mon, 29 Oct 2018 07:50:33 +0000 (09:50 +0200)] 
auth: Store password with auth_set_field in Lua passdb

Makes caching work for passwords

6 years agoauth: Use default scheme in Lua passdb lookup
Aki Tuomi [Mon, 29 Oct 2018 07:49:48 +0000 (09:49 +0200)] 
auth: Use default scheme in Lua passdb lookup

Fixes a null pointer crash.

6 years agolib-lua: Use source instead of short_src
Aki Tuomi [Thu, 25 Oct 2018 10:50:36 +0000 (13:50 +0300)] 
lib-lua: Use source instead of short_src

short_src is a limited value, and also an byte array
instead of a pointer so it should not be returned.

Found by coverity.

6 years agolib: Add unit test for event duration
Aki Tuomi [Wed, 7 Nov 2018 07:51:50 +0000 (09:51 +0200)] 
lib: Add unit test for event duration

Make sure event duration is non-zero when used without
ioloop.

6 years agolib-lua: Fix sizeof usage for struct event* storage
Aki Tuomi [Tue, 6 Nov 2018 19:00:47 +0000 (21:00 +0200)] 
lib-lua: Fix sizeof usage for struct event* storage

Found by coverity

6 years agolib-lua: Make sure events get right file:line information
Aki Tuomi [Fri, 19 Oct 2018 10:54:50 +0000 (13:54 +0300)] 
lib-lua: Make sure events get right file:line information

6 years agomail-lua: Fix argument number checking for mailbox#sync
Aki Tuomi [Fri, 19 Oct 2018 10:54:34 +0000 (13:54 +0300)] 
mail-lua: Fix argument number checking for mailbox#sync

6 years agopush-notification-driver-lua: Perform garbage collection after transaction
Aki Tuomi [Fri, 19 Oct 2018 06:39:39 +0000 (09:39 +0300)] 
push-notification-driver-lua: Perform garbage collection after transaction

Ensure Lua releases resources here.

6 years agopush-notification-driver-ox: Convert to event based logging
Aki Tuomi [Mon, 15 Oct 2018 11:46:30 +0000 (14:46 +0300)] 
push-notification-driver-ox: Convert to event based logging

Also fixes the logging to be standard

6 years agopush-notification-driver-lua: Add events
Aki Tuomi [Mon, 15 Oct 2018 09:20:20 +0000 (12:20 +0300)] 
push-notification-driver-lua: Add events

6 years agopush-notification: Emit event on transaction end
Aki Tuomi [Mon, 15 Oct 2018 09:04:19 +0000 (12:04 +0300)] 
push-notification: Emit event on transaction end

6 years agopush-notification: Add event to push notification transaction
Aki Tuomi [Mon, 15 Oct 2018 09:03:58 +0000 (12:03 +0300)] 
push-notification: Add event to push notification transaction

6 years agopush-notification: Add event category
Aki Tuomi [Mon, 15 Oct 2018 08:55:41 +0000 (11:55 +0300)] 
push-notification: Add event category

6 years agolib-lua: Move __gc metamethod for event to userdata
Aki Tuomi [Fri, 19 Oct 2018 08:36:09 +0000 (11:36 +0300)] 
lib-lua: Move __gc metamethod for event to userdata

Compability for lua 5.1

6 years agomail-lua: Check number of arguments
Aki Tuomi [Thu, 18 Oct 2018 08:37:00 +0000 (11:37 +0300)] 
mail-lua: Check number of arguments

6 years agolib-lua: Add DLUA_REQUIRE_ARGS(s,x) and DLUA_REQUIRE_ARGS_IN(s,x,y)
Aki Tuomi [Thu, 18 Oct 2018 09:04:41 +0000 (12:04 +0300)] 
lib-lua: Add DLUA_REQUIRE_ARGS(s,x) and DLUA_REQUIRE_ARGS_IN(s,x,y)

First form requires that x arguments are provided for dlua script s.

Second form requires that at least x and at most y arguments are provided
for dlua script s

Automatically returns luaL_error.

6 years agomail-lua: Make flags optional for mailbox#sync
Aki Tuomi [Tue, 16 Oct 2018 08:35:45 +0000 (11:35 +0300)] 
mail-lua: Make flags optional for mailbox#sync

6 years agomail-lua: Make flags optional for user#mailbox
Aki Tuomi [Tue, 16 Oct 2018 08:34:23 +0000 (11:34 +0300)] 
mail-lua: Make flags optional for user#mailbox

6 years agomail-lua: Change mailbox#status API to varargs
Aki Tuomi [Tue, 16 Oct 2018 07:13:27 +0000 (10:13 +0300)] 
mail-lua: Change mailbox#status API to varargs

It's much easier to use this way

6 years agolib-lua: Check number of arguments
Aki Tuomi [Thu, 18 Oct 2018 09:31:27 +0000 (12:31 +0300)] 
lib-lua: Check number of arguments

6 years agolib-lua: Add flag manipulation functions
Aki Tuomi [Mon, 30 Jul 2018 10:12:47 +0000 (13:12 +0300)] 
lib-lua: Add flag manipulation functions

6 years agolib-lua: Add test for event framework
Aki Tuomi [Thu, 11 Oct 2018 16:50:06 +0000 (19:50 +0300)] 
lib-lua: Add test for event framework

6 years agolib-lua: Add event interface
Aki Tuomi [Thu, 11 Oct 2018 16:10:17 +0000 (19:10 +0300)] 
lib-lua: Add event interface

6 years agolib-lua: Add events to scripts
Aki Tuomi [Thu, 11 Oct 2018 14:06:00 +0000 (17:06 +0300)] 
lib-lua: Add events to scripts

6 years agolib-master: Fix test-event-stats
Aki Tuomi [Wed, 17 Oct 2018 16:44:31 +0000 (19:44 +0300)] 
lib-master: Fix test-event-stats

New stats uses gettimeofday that generated unpredictable values
for this test.

6 years agolib: event - Stop exporting ioloop time
Aki Tuomi [Wed, 17 Oct 2018 09:47:37 +0000 (12:47 +0300)] 
lib: event - Stop exporting ioloop time

It is not needed by stats process.

6 years agostats: Use duration field from events
Aki Tuomi [Tue, 16 Oct 2018 06:03:05 +0000 (09:03 +0300)] 
stats: Use duration field from events

6 years agolib: event - Record real duration
Aki Tuomi [Tue, 16 Oct 2018 05:52:49 +0000 (08:52 +0300)] 
lib: event - Record real duration

The old code only measured difference between successive
ioloop_time updates. The new code uses gettimeofday to
get current real time, making measurements accurate.

6 years agolib: event - Duplicate source_filename
Aki Tuomi [Tue, 16 Oct 2018 05:17:27 +0000 (08:17 +0300)] 
lib: event - Duplicate source_filename

Prevents crash on event leak when plugin that caused the leak
is unloaded.

6 years agolib: event - Rename tv_created as tv_created_ioloop
Aki Tuomi [Tue, 16 Oct 2018 13:11:23 +0000 (16:11 +0300)] 
lib: event - Rename tv_created as tv_created_ioloop

6 years agopush-notification: Resolve confusion about msg->seq
Aki Tuomi [Wed, 3 Oct 2018 09:00:55 +0000 (12:00 +0300)] 
push-notification: Resolve confusion about msg->seq

It's not the same seq what the mail has, but a sequence that
is used to find out UID for saved mails. So rename it to
save_idx and treat it accordingly. Note that save_idx is 0
based, and mail sequence is 1 based.

6 years agopush-notification-driver-lua: Include date from MessageAppend
Aki Tuomi [Fri, 28 Sep 2018 10:30:51 +0000 (13:30 +0300)] 
push-notification-driver-lua: Include date from MessageAppend

6 years agopush-notification-event-messageappend: Include date information parsed from headers
Aki Tuomi [Fri, 28 Sep 2018 10:30:01 +0000 (13:30 +0300)] 
push-notification-event-messageappend: Include date information parsed from headers

Consistency with MessageNew

6 years agopush-notification: Make sure txn messages are unique
Aki Tuomi [Fri, 28 Sep 2018 10:01:58 +0000 (13:01 +0300)] 
push-notification: Make sure txn messages are unique

save_count is not reliable as it's not incremented for events like
flag changes.

6 years agopush-notification-driver-lua: Always use DLUA_LOG_LABEL
Aki Tuomi [Thu, 27 Sep 2018 06:54:10 +0000 (09:54 +0300)] 
push-notification-driver-lua: Always use DLUA_LOG_LABEL

6 years agopush-notification-driver-lua: Properly register all events
Aki Tuomi [Thu, 27 Sep 2018 06:52:59 +0000 (09:52 +0300)] 
push-notification-driver-lua: Properly register all events

6 years agomail-lua: Fix gc code to push key first then value
Aki Tuomi [Tue, 25 Sep 2018 12:49:21 +0000 (15:49 +0300)] 
mail-lua: Fix gc code to push key first then value

Otherwise it uses nil as key, which makes no sense and leads to eventual crash.

6 years agopush-notification-driver-lua: tx begin pushed mail user not username
Aki Tuomi [Tue, 25 Sep 2018 11:09:55 +0000 (14:09 +0300)] 
push-notification-driver-lua: tx begin pushed mail user not username

6 years agopush-notification-driver-lua: Do not push user again
Aki Tuomi [Tue, 25 Sep 2018 11:09:28 +0000 (14:09 +0300)] 
push-notification-driver-lua: Do not push user again

User is already pushed in tx begin, and can be stored there into the context.

6 years agopush-notification-driver-lua: Move event push earlier
Aki Tuomi [Tue, 25 Sep 2018 11:08:59 +0000 (14:08 +0300)] 
push-notification-driver-lua: Move event push earlier

Simplifies code

6 years agomail-lua: Add deinit_pre function
Aki Tuomi [Tue, 25 Sep 2018 09:24:02 +0000 (12:24 +0300)] 
mail-lua: Add deinit_pre function

6 years agopush-notification-driver-lua: Reference mail user only if initialization is successful
Aki Tuomi [Mon, 24 Sep 2018 12:29:12 +0000 (15:29 +0300)] 
push-notification-driver-lua: Reference mail user only if initialization is successful

Will cause assert-crash otherwise if initialization fails

6 years agopush-notification-driver-lua: Fix symbol names
Aki Tuomi [Mon, 24 Sep 2018 12:24:19 +0000 (15:24 +0300)] 
push-notification-driver-lua: Fix symbol names

6 years agomail-lua: Deinit script after others
Aki Tuomi [Mon, 24 Sep 2018 12:23:59 +0000 (15:23 +0300)] 
mail-lua: Deinit script after others

Some other plugin might need Lua for deinit

6 years agopush-notification-driver-lua: Use Lua references for context
Aki Tuomi [Mon, 24 Sep 2018 11:46:19 +0000 (14:46 +0300)] 
push-notification-driver-lua: Use Lua references for context

6 years agomail-lua: Implement mail_lua_plugin_get_script
Aki Tuomi [Mon, 24 Sep 2018 12:07:26 +0000 (15:07 +0300)] 
mail-lua: Implement mail_lua_plugin_get_script

It was forgotten in 950c7e06dbf7f1cd696653af95b8c0053a9e86da

6 years agoauth: db-lua - Remove unnecessary pushnil usage
Aki Tuomi [Tue, 22 May 2018 06:23:32 +0000 (09:23 +0300)] 
auth: db-lua - Remove unnecessary pushnil usage

lua_pushstring is NULL-safe

6 years agopush-notification: Add lua driver
Aki Tuomi [Wed, 14 Mar 2018 17:42:42 +0000 (19:42 +0200)] 
push-notification: Add lua driver

6 years agomail-lua: Add Lua support plugin for mail storage
Aki Tuomi [Wed, 14 Mar 2018 17:07:53 +0000 (19:07 +0200)] 
mail-lua: Add Lua support plugin for mail storage

6 years agolib-lua: Add lua_pushboolean helper to push real booleans
Aki Tuomi [Wed, 14 Mar 2018 16:49:50 +0000 (18:49 +0200)] 
lib-lua: Add lua_pushboolean helper to push real booleans

Makes boolean handling in dovecot code slightly easier

6 years agopush-notification: Fix mailbox unsubscribe event
Aki Tuomi [Wed, 14 Mar 2018 18:05:29 +0000 (20:05 +0200)] 
push-notification: Fix mailbox unsubscribe event

Subscribe should be FALSE here.

6 years agopush-notification: Fix initializing push notification mailbox triggers
Michael M Slusarz [Mon, 27 Aug 2018 03:53:56 +0000 (21:53 -0600)] 
push-notification: Fix initializing push notification mailbox triggers

None of the mailbox triggers were working, since the transaction was
not being correctly initialized.

6 years agodns: Remove duplicate event_unref() in dns_client_input_args()
Martti Rannanjärvi [Wed, 29 Aug 2018 14:27:58 +0000 (17:27 +0300)] 
dns: Remove duplicate event_unref() in dns_client_input_args()

The event is unreffed at the end of the function also.

6 years agodns: Return the lookup error string to the querier
Martti Rannanjärvi [Wed, 29 Aug 2018 14:22:22 +0000 (17:22 +0300)] 
dns: Return the lookup error string to the querier

6 years agolib-dns: Set error_r in dns_client_connect() on failure
Martti Rannanjärvi [Wed, 29 Aug 2018 10:40:33 +0000 (13:40 +0300)] 
lib-dns: Set error_r in dns_client_connect() on failure

6 years agolib-dns: Remove DNS from the log messages now that it's in the prefix
Martti Rannanjärvi [Wed, 29 Aug 2018 10:23:55 +0000 (13:23 +0300)] 
lib-dns: Remove DNS from the log messages now that it's in the prefix

6 years agolib-dns: Use dns(host): prefix instead of just host: in event
Martti Rannanjärvi [Wed, 29 Aug 2018 10:21:23 +0000 (13:21 +0300)] 
lib-dns: Use dns(host): prefix instead of just host: in event

6 years agolib: Use basename of unix socket path as event log prefix
Martti Rannanjärvi [Wed, 29 Aug 2018 08:04:10 +0000 (11:04 +0300)] 
lib: Use basename of unix socket path as event log prefix

This is to make the prefix consistent with other unix socket loggings in
Dovecot.

6 years agolib: connection - Clarify logging of incoming connections
Timo Sirainen [Mon, 27 Aug 2018 07:35:47 +0000 (10:35 +0300)] 
lib: connection - Clarify logging of incoming connections

Don't log "Client connected" for both incoming and outgoing connections.

6 years agolib: connection - Remove dead code
Timo Sirainen [Mon, 27 Aug 2018 07:33:54 +0000 (10:33 +0300)] 
lib: connection - Remove dead code

connection_client_connected() can only be called for clients. There was
already an assert for it.

6 years agoglobal: Don't try to send stats from unit tests
Timo Sirainen [Wed, 19 Sep 2018 09:41:39 +0000 (12:41 +0300)] 
global: Don't try to send stats from unit tests

6 years agodriver-sqlite: Fix crash and event leak in driver_sqlite_query_s()
Martti Rannanjärvi [Tue, 11 Sep 2018 08:21:36 +0000 (11:21 +0300)] 
driver-sqlite: Fix crash and event leak in driver_sqlite_query_s()

6 years agodriver-sqlite: Assign db in driver_sqlite_exec()
Martti Rannanjärvi [Mon, 10 Sep 2018 09:19:29 +0000 (12:19 +0300)] 
driver-sqlite: Assign db in driver_sqlite_exec()

This fixes a crash.

6 years agolib-sql: Fix wrong sql_query_finished_event() success parameter use
Martti Rannanjärvi [Thu, 13 Sep 2018 10:01:52 +0000 (13:01 +0300)] 
lib-sql: Fix wrong sql_query_finished_event() success parameter use

6 years agodriver-sqlite: Don't give false out of memory errors
Martti Rannanjärvi [Thu, 13 Sep 2018 09:36:20 +0000 (12:36 +0300)] 
driver-sqlite: Don't give false out of memory errors

Only log error from sqlite3_errmsg() when connected to the db, since
otherwise dovecot logs false "out of memory" errors.

6 years agodriver-sqlite: Add error to sql_query_finished event on error
Aki Tuomi [Wed, 12 Sep 2018 07:19:16 +0000 (10:19 +0300)] 
driver-sqlite: Add error to sql_query_finished event on error

6 years agodriver-pgsql: Add error to sql_query_finished if it fails
Aki Tuomi [Wed, 12 Sep 2018 07:18:48 +0000 (10:18 +0300)] 
driver-pgsql: Add error to sql_query_finished if it fails

6 years agodriver-cassandra: Add error to sql_query_finished event on error
Aki Tuomi [Wed, 12 Sep 2018 07:17:49 +0000 (10:17 +0300)] 
driver-cassandra: Add error to sql_query_finished event on error

6 years agolib-sql: Do not create event for old drivers
Aki Tuomi [Wed, 5 Sep 2018 10:20:02 +0000 (13:20 +0300)] 
lib-sql: Do not create event for old drivers

They can't use it anyways

6 years agodriver-sqlpool: Only strdup error on error
Aki Tuomi [Wed, 5 Sep 2018 05:34:28 +0000 (08:34 +0300)] 
driver-sqlpool: Only strdup error on error

Satisfies static analyzers

6 years agodriver-sqlite: Document why rollback is called when commit fails
Aki Tuomi [Tue, 4 Sep 2018 17:30:12 +0000 (20:30 +0300)] 
driver-sqlite: Document why rollback is called when commit fails

6 years agodriver-cassandra: Add events
Aki Tuomi [Sun, 2 Sep 2018 16:14:17 +0000 (19:14 +0300)] 
driver-cassandra: Add events

6 years agodriver-pgsql: Add events
Aki Tuomi [Sat, 1 Sep 2018 10:50:27 +0000 (13:50 +0300)] 
driver-pgsql: Add events

6 years agodriver-sqlite: Add events
Aki Tuomi [Fri, 31 Aug 2018 10:30:11 +0000 (13:30 +0300)] 
driver-sqlite: Add events

6 years agodriver-mysql: Add events
Aki Tuomi [Fri, 31 Aug 2018 06:45:59 +0000 (09:45 +0300)] 
driver-mysql: Add events

6 years agodriver-sqlpool: Add events
Aki Tuomi [Fri, 31 Aug 2018 06:31:48 +0000 (09:31 +0300)] 
driver-sqlpool: Add events

6 years agolib-sql: Add events
Aki Tuomi [Thu, 30 Aug 2018 11:23:10 +0000 (14:23 +0300)] 
lib-sql: Add events

6 years agoauth: Use sql_init_full
Aki Tuomi [Mon, 3 Sep 2018 10:59:41 +0000 (13:59 +0300)] 
auth: Use sql_init_full

6 years agoglobal: Replace sql_db_cache_new with sql_db_cache_new2
Aki Tuomi [Tue, 4 Sep 2018 06:31:25 +0000 (09:31 +0300)] 
global: Replace sql_db_cache_new with sql_db_cache_new2

6 years agodict-sql: Use sql_db_cache_new2
Aki Tuomi [Mon, 3 Sep 2018 11:13:55 +0000 (14:13 +0300)] 
dict-sql: Use sql_db_cache_new2

6 years agolib-sql: Add sql_db_cache_new2 that uses the new sql_init_full initializer
Aki Tuomi [Mon, 3 Sep 2018 11:12:05 +0000 (14:12 +0300)] 
lib-sql: Add sql_db_cache_new2 that uses the new sql_init_full initializer

6 years agodriver-cassandra: Add init_full
Aki Tuomi [Sun, 2 Sep 2018 15:45:14 +0000 (18:45 +0300)] 
driver-cassandra: Add init_full

6 years agodriver-cassandra: Return error from connection string parser
Aki Tuomi [Sun, 2 Sep 2018 15:39:47 +0000 (18:39 +0300)] 
driver-cassandra: Return error from connection string parser

6 years agodriver-cassandra: Add driver_cassandra_free
Aki Tuomi [Tue, 4 Sep 2018 06:43:32 +0000 (09:43 +0300)] 
driver-cassandra: Add driver_cassandra_free

6 years agodriver-pgsql: Add init_full
Aki Tuomi [Sat, 1 Sep 2018 10:43:19 +0000 (13:43 +0300)] 
driver-pgsql: Add init_full

6 years agodriver-pgsql: Add driver_pgsql_free
Aki Tuomi [Tue, 4 Sep 2018 06:39:06 +0000 (09:39 +0300)] 
driver-pgsql: Add driver_pgsql_free