It's not very clear from your mails what configuration doesn't work. I see you've mainly listed configuration for workarounds that do work, or workarounds that do not work. Since we have a passing CI test for the functionality you're apparently trying, I'm not sure what is going on with your config that is different. Please send the whole doveconf -n and the returned values from your userdb. Privately is fine too.
On 7. Apr 2026, at 14.07, Ömer Güven <omer.guven@zuplu.com> wrote:
I created that empty user named list in my config, so it exists. I wrote about that earlier. You still cannot set values inside it via userdb but only via doveadm.
Am 07.04.2026 um 11:45 schrieb Timo Sirainen <timo@sirainen.com>:
On 7. Apr 2026, at 11.23, Ömer Güven via dovecot <dovecot@dovecot.org> wrote:
To make it more complicated: You can set it in
doveadm -o crypt_global_private_key/user/crypt_private_key_file=inline:...but not in userdb the same way. (I
m returning it via passdb lua, with userdb_ prefixed.) Setting userdb_crypt_private_key_file without any named filter works inexpectedly. So userdb returned variables are somehow parsed differently (maybe slashes arent split) than doveadm options with divergent behavior and the documentation is wrong about that. :( I guess the way it works now is unintented and won`t work in the future.It would help if you gave full crypto configs in dovecot.conf and userdb of what doesn't work. I'm now suspecting that you're trying to return everything from userdb, but you don't create the "user" named list filter anywhere? If you don't have in config:
crypt_global_private_key user { }
Then in userdb you need to return userdb_crypt_global_private_key=user to create it.
Not really sure why it works in -o parameter without it.