]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
10 years agolib-compression: Fixed dependency tracking in Makefile
Timo Sirainen [Sat, 9 May 2015 15:53:02 +0000 (18:53 +0300)] 
lib-compression: Fixed dependency tracking in Makefile

10 years agoman: Added description of option `-F file'.
Pascal Volk [Sat, 9 May 2015 15:29:21 +0000 (15:29 +0000)] 
man: Added description of option `-F file'.

10 years agolib-fts: Various improvements to test-fts-tokenizer
Timo Sirainen [Sat, 9 May 2015 15:28:04 +0000 (18:28 +0300)] 
lib-fts: Various improvements to test-fts-tokenizer

10 years agolib-fts: Added fts_tokenizer_final() as a convenience wrapper.
Timo Sirainen [Sat, 9 May 2015 15:00:58 +0000 (18:00 +0300)] 
lib-fts: Added fts_tokenizer_final() as a convenience wrapper.

10 years agolib-fts: Fixed token truncation.
Timo Sirainen [Sat, 9 May 2015 14:34:59 +0000 (17:34 +0300)] 
lib-fts: Fixed token truncation.

10 years agolib-fts: Fixed compiling without libicu
Timo Sirainen [Sat, 9 May 2015 14:07:32 +0000 (17:07 +0300)] 
lib-fts: Fixed compiling without libicu

10 years agolib-storage: Run each storage hook inside its own data stack frame.
Timo Sirainen [Sat, 9 May 2015 14:06:42 +0000 (17:06 +0300)] 
lib-storage: Run each storage hook inside its own data stack frame.

10 years agofts: Renamed filter and tokenizer specific setting keys.
Timo Sirainen [Sat, 9 May 2015 14:05:17 +0000 (17:05 +0300)] 
fts: Renamed filter and tokenizer specific setting keys.
Having the plural in the name didn't make a lot of sense, so all the
settings are now:

 fts_filters = name1 name2
 fts_filters_<lang> = name3 name 4
 fts_filter_<name> = key1=value1
 fts_filter_<lang>_<name> = key2=value2

 fts_tokenizers = name1 name2
 fts_tokenizer_<name> = key1=value1

So this also removes the confusion in settings if there existed a filter
with one of the language names.

10 years agofts: Simplify error messages a little bit to be more consistent with other such errors.
Timo Sirainen [Sat, 9 May 2015 14:00:12 +0000 (17:00 +0300)] 
fts: Simplify error messages a little bit to be more consistent with other such errors.
Only the setting name is really important.

10 years agofts: Use key=value instead of "key value" settings for tokenizers and filters.
Timo Sirainen [Sat, 9 May 2015 13:58:09 +0000 (16:58 +0300)] 
fts: Use key=value instead of "key value" settings for tokenizers and filters.

10 years agofts: If fts_filters setting doesn't exist, use built-in defaults.
Timo Sirainen [Sat, 9 May 2015 12:11:48 +0000 (15:11 +0300)] 
fts: If fts_filters setting doesn't exist, use built-in defaults.

10 years agofts: Prefer language-specific filter settings over global fts_filters setting.
Timo Sirainen [Sat, 9 May 2015 12:10:17 +0000 (15:10 +0300)] 
fts: Prefer language-specific filter settings over global fts_filters setting.

10 years agolib-fts: Minor code cleanups
Timo Sirainen [Sat, 9 May 2015 12:07:13 +0000 (15:07 +0300)] 
lib-fts: Minor code cleanups

10 years agolib-fts: fts-tokenizer-generic-private.h had content that didn't really belog there.
Timo Sirainen [Sat, 9 May 2015 12:06:45 +0000 (15:06 +0300)] 
lib-fts: fts-tokenizer-generic-private.h had content that didn't really belog there.

10 years agolib-fts: Removed supports() function from filter API
Timo Sirainen [Sat, 9 May 2015 12:00:28 +0000 (15:00 +0300)] 
lib-fts: Removed supports() function from filter API
I think the original idea was that this could be used to automatically
create filters for many languages, but this probably won't be needed or
wanted.

10 years agolib-fts: Removed tokenizer name macros from fts-tokenizer.h
Timo Sirainen [Sat, 9 May 2015 11:56:33 +0000 (14:56 +0300)] 
lib-fts: Removed tokenizer name macros from fts-tokenizer.h
The tokenizers can be directly accessed via their class structs.

10 years agolib-fts: Store pointers to fts_tokenizer classes instead of copying the data.
Timo Sirainen [Sat, 9 May 2015 11:55:47 +0000 (14:55 +0300)] 
lib-fts: Store pointers to fts_tokenizer classes instead of copying the data.
The same reason as for doing this for fts-filter.

10 years agolib-fts: test-fts-tokenizer cleanup - moved tokenizers_init/deinit() to be done globally
Timo Sirainen [Sat, 9 May 2015 11:53:46 +0000 (14:53 +0300)] 
lib-fts: test-fts-tokenizer cleanup - moved tokenizers_init/deinit() to be done globally

10 years agolib-fts: Removed filter name macros from fts-filter.h
Timo Sirainen [Sat, 9 May 2015 11:50:10 +0000 (14:50 +0300)] 
lib-fts: Removed filter name macros from fts-filter.h
The filters can be directly accessed via their class structs.

10 years agolib-fts: Store pointers to fts_filter classes instead of copying the data.
Timo Sirainen [Sat, 9 May 2015 11:49:20 +0000 (14:49 +0300)] 
lib-fts: Store pointers to fts_filter classes instead of copying the data.
Doesn't really matter, but it's a bit cleaner when fts_filter_find() returns
the same pointer as the fts_filter class originally was.

10 years agofts: Lowecase non-human language input while indexing.
Timo Sirainen [Sat, 9 May 2015 11:41:05 +0000 (14:41 +0300)] 
fts: Lowecase non-human language input while indexing.

10 years agolib-fts: Added "lowercase" filter.
Timo Sirainen [Sat, 9 May 2015 11:26:42 +0000 (14:26 +0300)] 
lib-fts: Added "lowercase" filter.
For now it handles only ASCII characters, but that's enough for our use.

10 years agolib-fts: Removed "simple" normalizer.
Timo Sirainen [Sat, 9 May 2015 11:09:37 +0000 (14:09 +0300)] 
lib-fts: Removed "simple" normalizer.
It translated input to titlecase, which wasn't suitable for snowball
stemming that wanted lowercase input. Since that doesn't work, there's
probably no good for the existence of this (perhaps in future it's replaced
by unicode-aware lowercaser).

10 years agolib-fts: Minor unit test cleanups
Timo Sirainen [Sat, 9 May 2015 11:19:48 +0000 (14:19 +0300)] 
lib-fts: Minor unit test cleanups

10 years agofts: Reset tokenizers before using them
Timo Sirainen [Sat, 9 May 2015 10:57:41 +0000 (13:57 +0300)] 
fts: Reset tokenizers before using them
This is mainly needed if the previous tokenization had failed.

10 years agolib-fts: Added fts_tokenizer_reset()
Timo Sirainen [Sat, 9 May 2015 10:52:37 +0000 (13:52 +0300)] 
lib-fts: Added fts_tokenizer_reset()

10 years agolib-fts: fts-tokenizer-address didn't reset state properly when input ended.
Timo Sirainen [Sat, 9 May 2015 10:46:37 +0000 (13:46 +0300)] 
lib-fts: fts-tokenizer-address didn't reset state properly when input ended.

10 years agofts: When tokenizing a search word, give "search" parameter to all the tokenizers.
Timo Sirainen [Sat, 9 May 2015 10:31:14 +0000 (13:31 +0300)] 
fts: When tokenizing a search word, give "search" parameter to all the tokenizers.

10 years agofts: Don't crash if search arg string expands to empty token list.
Timo Sirainen [Sat, 9 May 2015 10:30:41 +0000 (13:30 +0300)] 
fts: Don't crash if search arg string expands to empty token list.

10 years agolib-fts: Use case-sensitive settings comparisons in fts-tokenizer
Timo Sirainen [Sat, 9 May 2015 10:20:29 +0000 (13:20 +0300)] 
lib-fts: Use case-sensitive settings comparisons in fts-tokenizer
Dovecot in general doesn't allow case-insensitive settings.

10 years agolib-fts: Minor unit test fix - use case sensitive checks for word comparison.
Timo Sirainen [Sat, 9 May 2015 10:19:21 +0000 (13:19 +0300)] 
lib-fts: Minor unit test fix - use case sensitive checks for word comparison.

10 years agolib-storage: mail_search_arg_dup() is now a public function.
Timo Sirainen [Sat, 9 May 2015 10:15:43 +0000 (13:15 +0300)] 
lib-storage: mail_search_arg_dup() is now a public function.

10 years agolib-fts: Implemented "search" parameter to fts-tokenizer-address.
Timo Sirainen [Sat, 9 May 2015 10:15:09 +0000 (13:15 +0300)] 
lib-fts: Implemented "search" parameter to fts-tokenizer-address.

10 years agofts: If filtering fails during search arg expansion, fail the fts search.
Timo Sirainen [Sat, 9 May 2015 10:01:45 +0000 (13:01 +0300)] 
fts: If filtering fails during search arg expansion, fail the fts search.

10 years agolib-fts: Compiler warning fix when building without libicu
Timo Sirainen [Sat, 9 May 2015 09:50:54 +0000 (12:50 +0300)] 
lib-fts: Compiler warning fix when building without libicu

10 years agolib-fts: Minor fts-tokenizer-address cleanups
Timo Sirainen [Sat, 9 May 2015 09:50:11 +0000 (12:50 +0300)] 
lib-fts: Minor fts-tokenizer-address cleanups

10 years agolib-fts: Removed explicit no_parent setting from fts-address-tokenizer
Timo Sirainen [Sat, 9 May 2015 09:48:13 +0000 (12:48 +0300)] 
lib-fts: Removed explicit no_parent setting from fts-address-tokenizer
It was used only by unit tests and we can check it without the setting as
well.

10 years agolib-fts: Use rfc822-parser in fts-tokenizer-address instead of duplicating its code.
Timo Sirainen [Sat, 9 May 2015 09:41:59 +0000 (12:41 +0300)] 
lib-fts: Use rfc822-parser in fts-tokenizer-address instead of duplicating its code.

10 years agolib-fts: Don't treat empty domains as valid addresses.
Timo Sirainen [Sat, 9 May 2015 09:39:21 +0000 (12:39 +0300)] 
lib-fts: Don't treat empty domains as valid addresses.
This actually pretty much reverts the previous patch and just fixes the
original code's chars_after_at() to work correctly. Also renamed the
function to make it a bit clearer what was intended.

10 years agolib-fts: Removed unnecessary code from fts-address-tokenizer.
Timo Sirainen [Sat, 9 May 2015 09:32:46 +0000 (12:32 +0300)] 
lib-fts: Removed unnecessary code from fts-address-tokenizer.
chars_after_at() was only used to check if local-part was empty, but it was
checked at a state where it never could have been empty.

10 years agolib-fts: Various fixes and cleanups to stopwords filter.
Timo Sirainen [Sat, 9 May 2015 09:01:42 +0000 (12:01 +0300)] 
lib-fts: Various fixes and cleanups to stopwords filter.
Most importantly words added to hash table needs to be allocated from the
pool and not data stack.

10 years agolib-fts: Assume that fts_language.name is always lowercased and has two letters.
Timo Sirainen [Sat, 9 May 2015 09:04:56 +0000 (12:04 +0300)] 
lib-fts: Assume that fts_language.name is always lowercased and has two letters.
Anything else just unnecessarily complicates the code.

10 years agolib-fts: Fixed test-fts-filter unit test to handle errors a bit better.
Timo Sirainen [Sat, 9 May 2015 08:57:40 +0000 (11:57 +0300)] 
lib-fts: Fixed test-fts-filter unit test to handle errors a bit better.

10 years agolib-fts: Changed filter's internal APIs to return error_r directly.
Timo Sirainen [Sat, 9 May 2015 08:46:09 +0000 (11:46 +0300)] 
lib-fts: Changed filter's internal APIs to return error_r directly.
It's not very safe to store strings allocated from data stack to any
permanent structs.

10 years agolib-fts: Snowball's sb_stemmer_stem() can only fail because it runs out of memory.
Timo Sirainen [Sat, 9 May 2015 08:33:45 +0000 (11:33 +0300)] 
lib-fts: Snowball's sb_stemmer_stem() can only fail because it runs out of memory.

10 years agolib-fts: Improve using max_length in tr29 tokenizer
Teemu Huovila [Sat, 9 May 2015 08:17:03 +0000 (11:17 +0300)] 
lib-fts: Improve using max_length in tr29 tokenizer

10 years agolib-fts: Fixed using max_length setting in simple tokenizer
Teemu Huovila [Sat, 9 May 2015 08:16:22 +0000 (11:16 +0300)] 
lib-fts: Fixed using max_length setting in simple tokenizer

10 years agolib-fts: Default to simple tokenizer algorithm
Teemu Huovila [Sat, 9 May 2015 08:15:50 +0000 (11:15 +0300)] 
lib-fts: Default to simple tokenizer algorithm

10 years agolib-fts: Delay stopwords filter full initialization until it's needed.
Teemu Huovila [Sat, 9 May 2015 08:15:34 +0000 (11:15 +0300)] 
lib-fts: Delay stopwords filter full initialization until it's needed.

10 years agolib-fts: Delay snowball filter initialization until it's needed.
Teemu Huovila [Sat, 9 May 2015 08:14:51 +0000 (11:14 +0300)] 
lib-fts: Delay snowball filter initialization until it's needed.

10 years agofts: Improve filter error handling.
Teemu Huovila [Sat, 9 May 2015 08:13:49 +0000 (11:13 +0300)] 
fts: Improve filter error handling.

In lib-fts:
Move error storage to the generic filter struct level. Change make_utf8
helper to void also.

In fts:
Add the error argument to _filter() calls.

10 years agolib-fts: Removed make_uchar() return value.
Teemu Huovila [Sat, 9 May 2015 08:10:31 +0000 (11:10 +0300)] 
lib-fts: Removed make_uchar() return value.
It was already de facto meaningless, so best we remove it.

10 years agolib-fts: normalizer-icu now delays initialization of libicu.
Teemu Huovila [Sat, 9 May 2015 08:09:37 +0000 (11:09 +0300)] 
lib-fts: normalizer-icu now delays initialization of libicu.
This way the normalizer can be quickly created even if it's never even used.

10 years agofts: Change filter API to be able to return errors
Teemu Huovila [Sat, 9 May 2015 08:06:45 +0000 (11:06 +0300)] 
fts: Change filter API to be able to return errors

Modify fts_filter_filter() to return integer status codes. It returns
1 if a token was returned, 0 if it was filtered away and -1 on error.

10 years agofts: Change tokenizer API to be able to return errors
Teemu Huovila [Sat, 9 May 2015 08:05:04 +0000 (11:05 +0300)] 
fts: Change tokenizer API to be able to return errors

Modify fts_tokenizer_next() to return integer status codes. It returns
1 if a token was returned in *token_r, 0 if more input is needed and -1
on error.

10 years agofts: Replace '-' with '_' in tokenizer-specific fts_tokenizers_* settings
Teemu Huovila [Sat, 9 May 2015 08:03:21 +0000 (11:03 +0300)] 
fts: Replace '-' with '_' in tokenizer-specific fts_tokenizers_* settings

10 years agofts: Create tokenizers differently
Teemu Huovila [Sat, 9 May 2015 08:02:22 +0000 (11:02 +0300)] 
fts: Create tokenizers differently

Create tokenizers earlier. Create separate tokenizers for search
and indexing. Enable configuration of tokenizers. Add some helpers
in fts-tokenizer.h api. Change tokenizer unit tests to match
those changes.

lib-fts: Refactor lib-fts settings a bit

Turned address tokenizer settings into "boolean" values. Changed
have_parent to "no_parent" and added "search" setting. Added
documentation in fts-tokenizer.h. Change unit tests accordingly.

10 years agofts: Create filters earlier
Teemu Huovila [Sat, 9 May 2015 07:53:25 +0000 (10:53 +0300)] 
fts: Create filters earlier

This builds on the assumption that early initialization will be made
less costly, in a coming change.

10 years agofts: Fixed handling NOT when using lib-fts
Timo Sirainen [Fri, 8 May 2015 13:00:16 +0000 (16:00 +0300)] 
fts: Fixed handling NOT when using lib-fts

10 years agodsync: Stop running if SIGINT/SIGTERM is received.
Timo Sirainen [Fri, 8 May 2015 11:47:26 +0000 (14:47 +0300)] 
dsync: Stop running if SIGINT/SIGTERM is received.

10 years agoMoved fs-compress from lib-fs to lib-compression.
Timo Sirainen [Fri, 8 May 2015 07:44:18 +0000 (10:44 +0300)] 
Moved fs-compress from lib-fs to lib-compression.
This solves build ordering issues.

10 years agolib-fs: Fixed fs-compress code to actually build and run.
Timo Sirainen [Thu, 7 May 2015 17:35:23 +0000 (20:35 +0300)] 
lib-fs: Fixed fs-compress code to actually build and run.
It's a plugin (because it depends on extra compression libraries). We want
to register it only when it's explicitly attempted to be used, not before.

10 years agolib-fs: Added fs-compress wrapper.
Timo Sirainen [Thu, 7 May 2015 17:25:44 +0000 (20:25 +0300)] 
lib-fs: Added fs-compress wrapper.
Future TODO could include automatically detecting the format of the input
file, but this should be optional.

10 years agolib-storage: Fixed LAYOUT=imapdir to work again
Timo Sirainen [Thu, 7 May 2015 15:21:35 +0000 (18:21 +0300)] 
lib-storage: Fixed LAYOUT=imapdir to work again
Patch by Jason Gunthorpe

10 years agodirector: Fixed "doveadm director status <user>" lookup to return "Current" correctly.
Timo Sirainen [Thu, 7 May 2015 15:04:33 +0000 (18:04 +0300)] 
director: Fixed "doveadm director status <user>" lookup to return "Current" correctly.

10 years agoexample-config: s/Recipient:/Received:/
Timo Sirainen [Thu, 7 May 2015 14:29:55 +0000 (17:29 +0300)] 
example-config: s/Recipient:/Received:/

10 years agoexmaple-config: Added lmtp_hdr_delivery_address setting.
Timo Sirainen [Thu, 7 May 2015 14:29:00 +0000 (17:29 +0300)] 
exmaple-config: Added lmtp_hdr_delivery_address setting.

10 years agoauth: Added assert to make sure previous change is correct.
Timo Sirainen [Thu, 7 May 2015 14:18:44 +0000 (17:18 +0300)] 
auth: Added assert to make sure previous change is correct.

10 years agoauth: Fixed credentials lookups via auth-workers when no actual password was returned.
Timo Sirainen [Thu, 7 May 2015 08:27:55 +0000 (11:27 +0300)] 
auth: Fixed credentials lookups via auth-workers when no actual password was returned.
For example LDAP lookup with auth_bind=yes should still return any extra
fields.

10 years agoldap auth: If password is already verified (e.g. master user login), skip LDAP auth...
Timo Sirainen [Thu, 7 May 2015 08:21:33 +0000 (11:21 +0300)] 
ldap auth: If password is already verified (e.g. master user login), skip LDAP auth binding.
This happens only if auth_bind_userdn isn't set, i.e. it only makes sense if
the LDAP DN lookup also returns some extra fields.

10 years agombox: Added an extra assert
Timo Sirainen [Wed, 6 May 2015 21:01:16 +0000 (00:01 +0300)] 
mbox: Added an extra assert

10 years agombox: Fixed crash/corruption in some situations when the first mail was expunged.
Timo Sirainen [Wed, 6 May 2015 21:01:08 +0000 (00:01 +0300)] 
mbox: Fixed crash/corruption in some situations when the first mail was expunged.
This could be reproduced with default mbox settings, IMAP session that does
 - STORE 1 +FLAGS \DELETED
 - EXPUNGE

With mbox containing:

===
From root@example.com  Tue Jan 13 10:18:16 2015

a

From root@example.com  Tue Jan 13 10:18:20 2015

a

===

10 years agoimap: Don't advertise SPECIAL-USE if there are no such mailboxes configured.
Timo Sirainen [Wed, 6 May 2015 16:50:23 +0000 (19:50 +0300)] 
imap: Don't advertise SPECIAL-USE if there are no such mailboxes configured.

10 years agodsync: Don't try to rename namespace roots.
Timo Sirainen [Wed, 6 May 2015 13:16:11 +0000 (16:16 +0300)] 
dsync: Don't try to rename namespace roots.
It'll just cause an assert-crash.

10 years agodoveadm: Changed -U to -F
Timo Sirainen [Wed, 6 May 2015 13:01:45 +0000 (16:01 +0300)] 
doveadm: Changed -U to -F
Otherwise -U collides with doveadm sync -U parameter. -F isn't currently
used by anything.

10 years agodoveadm: Added -U <file> parameter for executing the command for all the users in...
Timo Sirainen [Wed, 6 May 2015 12:45:43 +0000 (15:45 +0300)] 
doveadm: Added -U <file> parameter for executing the command for all the users in the file.
This is similar to -A parameter, but instead of getting the list of users
from userdb they are read from the file. The file contains one username per
line.

10 years agodoveadm-server: Invalid parameters for some commands caused crash at deinit handlers.
Timo Sirainen [Wed, 6 May 2015 12:42:31 +0000 (15:42 +0300)] 
doveadm-server: Invalid parameters for some commands caused crash at deinit handlers.
deinit() can be called even if init() was never called.

10 years agoscript: Another comment update about protocol - the previous one was wrong.
Timo Sirainen [Wed, 6 May 2015 11:14:09 +0000 (14:14 +0300)] 
script: Another comment update about protocol - the previous one was wrong.

10 years agoscript: Updated comment to describe the current script protocol.
Timo Sirainen [Wed, 6 May 2015 08:10:09 +0000 (11:10 +0300)] 
script: Updated comment to describe the current script protocol.

10 years agodoveadm fs delete: Fixed function return type
Timo Sirainen [Tue, 5 May 2015 20:07:03 +0000 (23:07 +0300)] 
doveadm fs delete: Fixed function return type

10 years agolib-storage: After mailbox_list_init_fs() is finished, notify fs about it.
Timo Sirainen [Tue, 5 May 2015 13:24:07 +0000 (16:24 +0300)] 
lib-storage: After mailbox_list_init_fs() is finished, notify fs about it.
Creating a separate fs_init_finish() would perhaps have been clearner, but
it's a lot more work and usually isn't even necessary for most backends.
So I simply chose to use fs_get_properties() which is a fast call in all fs
backends and the few ones that actually care about the initialization finish
can then do their work in there.

10 years agofts-lucene: Removed lazy initialization code.
Timo Sirainen [Tue, 5 May 2015 13:18:21 +0000 (16:18 +0300)] 
fts-lucene: Removed lazy initialization code.
This is no longer needed after the previous fts commit.

10 years agofts: Initialize fts backend in mail_namespaces_added(), not in mailbox_list_created()
Timo Sirainen [Tue, 5 May 2015 13:17:14 +0000 (16:17 +0300)] 
fts: Initialize fts backend in mail_namespaces_added(), not in mailbox_list_created()
This way the storage has already been created by the time fts initialization
starts, which simplifies things.

10 years agolib-storage: mailbox_list_fs_get_list() shouldn't crash if fs wasn't created by mailb...
Timo Sirainen [Tue, 5 May 2015 13:14:07 +0000 (16:14 +0300)] 
lib-storage: mailbox_list_fs_get_list() shouldn't crash if fs wasn't created by mailbox_list_init_fs()

10 years agoauth: If passdb has non-matching allow_nets, don't fail the other passdb lookups...
Timo Sirainen [Tue, 5 May 2015 11:16:31 +0000 (14:16 +0300)] 
auth: If passdb has non-matching allow_nets, don't fail the other passdb lookups also.
We might want to use e.g.:

passdb {
  driver = static
  args = password=secretmasterpass allow_nets=10.1.2.3
}
passdb {
  ...
}

If allow_nets didn't match in the first passdb, we should just ignore it and
continue to the next passdb.

10 years agodoveadm fs delete: Another attempt at fixing recursive deletion.
Timo Sirainen [Tue, 5 May 2015 10:35:52 +0000 (13:35 +0300)] 
doveadm fs delete: Another attempt at fixing recursive deletion.
I'm not entirely sure anymore what the original infinite looping was, but
this fixes all the potential problems that I see.

10 years agodoveadm fs delete: Reverted last two patches - they were all completely wrong..
Timo Sirainen [Tue, 5 May 2015 10:30:38 +0000 (13:30 +0300)] 
doveadm fs delete: Reverted last two patches - they were all completely wrong..

10 years agodoveadm fs delete: Recent changes broke it completely.
Timo Sirainen [Tue, 5 May 2015 10:13:42 +0000 (13:13 +0300)] 
doveadm fs delete: Recent changes broke it completely.

10 years agolib-storage: Fixed setting/getting server metadata.
Timo Sirainen [Mon, 4 May 2015 20:27:42 +0000 (23:27 +0300)] 
lib-storage: Fixed setting/getting server metadata.
Also added a MAILBOX_ATTRIBUTE_KEY_IS_USER_ACCESSIBLE() macro to make it a
bit easier to check if a key should be accessible to a user or not.

10 years agomail-storage: Moved mailbox attributes API to separate module.
Stephan Bosch [Mon, 4 May 2015 16:53:53 +0000 (19:53 +0300)] 
mail-storage: Moved mailbox attributes API to separate module.

10 years agolib-fs: Forgot to initialize refcount in previous commit
Timo Sirainen [Mon, 4 May 2015 16:15:10 +0000 (19:15 +0300)] 
lib-fs: Forgot to initialize refcount in previous commit

10 years agolib-fs: Added fs_ref() and fs_unref() for reference counting.
Timo Sirainen [Mon, 4 May 2015 16:06:11 +0000 (19:06 +0300)] 
lib-fs: Added fs_ref() and fs_unref() for reference counting.

10 years agoimap: FETCH BODY.PEEK[HEADER.FIELDS (..)] didn't set wanted_headers optimization.
Timo Sirainen [Mon, 4 May 2015 15:44:29 +0000 (18:44 +0300)] 
imap: FETCH BODY.PEEK[HEADER.FIELDS (..)] didn't set wanted_headers optimization.
Primarily this fixes imapc's prefetching.

10 years agoimapc: Various optimization fixes to fetching messages' virtual size.
Timo Sirainen [Mon, 4 May 2015 15:31:27 +0000 (18:31 +0300)] 
imapc: Various optimization fixes to fetching messages' virtual size.

10 years agoimapc: imapc-features=rfc822.size didn't work for fetching mail's virtual size.
Timo Sirainen [Mon, 4 May 2015 15:15:00 +0000 (18:15 +0300)] 
imapc: imapc-features=rfc822.size didn't work for fetching mail's virtual size.
Physical and virtual sizes are the same for imapc.

10 years agoconfigure: When compiling with sqlite3, don't forcibly link with zlib.
Timo Sirainen [Mon, 4 May 2015 09:07:16 +0000 (12:07 +0300)] 
configure: When compiling with sqlite3, don't forcibly link with zlib.
Looks like -lz was originally added when it was copy&pasted from some other
code. Hopefully this isn't actually needed by any (current) system.

10 years agoman: Fixed -Dv parameter position in doveadm-sync.1
Timo Sirainen [Mon, 4 May 2015 08:55:11 +0000 (11:55 +0300)] 
man: Fixed -Dv parameter position in doveadm-sync.1

10 years agoacl: Log more debug info with mail_debug=yes
Timo Sirainen [Sun, 3 May 2015 14:07:02 +0000 (17:07 +0300)] 
acl: Log more debug info with mail_debug=yes

10 years agolib-mail: Removed quoted_printable_decode*()
Timo Sirainen [Sun, 3 May 2015 13:26:46 +0000 (16:26 +0300)] 
lib-mail: Removed quoted_printable_decode*()
quoted_printable_q_decode() was still left in quoted-printable.h, but maybe
it should be moved to qp-decoder.c as well.

10 years agolib-mail: Switched message-decoder to use qp-decoder.
Timo Sirainen [Sun, 3 May 2015 13:23:41 +0000 (16:23 +0300)] 
lib-mail: Switched message-decoder to use qp-decoder.
This probably doesn't fix any actual bugs, but allows getting rid of the
quoted_printable_decode*()