Am 28.07.23 um 13:49 schrieb Frank Richter (
I'd like to change vacation settings for users with sogo-tool. Basically I do

sogo-tool user-preferences get defaults $user Vacation > file.json
edit file.json
sogo-tool user-preferences set defaults $user -p sieve.cred Vacation -f file.json

The setting for vacation are written to SOGo database and sieve filter on mail server are ok. But if the user has filter rules with fileinto actions the folder is written with '/' as folder separator. Our IMAP server has '.' as separator, so '/' is wrong.

Sieve filter exported by SOGo Webmail – all right:
if allof (header :contains "subject" "…") {
    fileinto "INBOX.Junk";

After changing with: sogo-tool user-preferences set defaults $user -p sieve.cred Vacation -f file.json
if allof (header :contains "subject" "…") {
    fileinto "INBOX/Junk";

Do I miss something … or is it a bug?

Yes, I missed something :-) I think I found the cause:

sogo-tool (or a function call inside) tries to determine the folder separator by logging in to the IMAP server. My sieve admin, defined in sieve.cred, wasn't able to log into the IMAP server, just the sieve server. So the folder separator couldn't be examnied and the defaul '/' was used.

2 possible solutions:

1. Make sieve admin an admin in IMAP as well – or –
2. Set in sogo.conf: NGImap4ConnectionStringSeparator = ".";

I tend to 2.


Frank Richter, Chemnitz University of Technolgy, Germany

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to