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.