kolabd renames mailboxes if the primary mail policy is changed
Closed, InvalidPublic


This happens reproducibly with the current pykolab 0.8.7 in Kolab 16.

to reproduce:

You have this setting in /etc/kolab/kolab.conf

primary_mail = %(givenname)s.%(surname)s@%(domain)s

You create a user with firstname test and surname test, the mailbox is created in /var/spool/imap/domain/.../t/user/test^test

Now you change the primary_mail in kolab.conf to %(surname)s@%(domain)s

Restart kolabd: systemctl restart kolabd

Now the mailbox has been moved to /var/spool/imap/domain/.../t/user/test

In our opinion, this is not wanted at all. It changes the login name for the user, and does not move the sieve scripts. It drops the secondary mail address if that is the same as the new primary address. So even when changing back the primary mail policy, you have lost information.

The primary mail policy should only take effect when creating mailboxes, but should not be enforced during the lifetime of a mailbox.

Did we overlook a usecase where this is desired behaviour to rename mailboxes?


Ticket Type

Event Timeline

pokorra created this task.Dec 19 2017, 11:17 AM
pokorra raised the priority of this task from 60 to High.
pokorra updated the task description. (Show Details)
pokorra added a project: PyKolab.
pokorra added a subscriber: PyKolab Developers.
pasik added a subscriber: pasik.May 11 2018, 10:25 AM
vanmeeuwen closed this task as Invalid.Jun 26 2018, 3:45 PM
vanmeeuwen added a subscriber: vanmeeuwen.

Renaming the mailbox works as intended -- if the result attribute value changes, then so must the mailbox name. This is an effect of the username canonification processes applied in webmail+friends and Cyrus IMAP itself (using ptloader).

By default, the result attribute is the primary mail attribute. By default, this primary mail attribute changes when the given name and/or surname is changed ("marriage/divorce" scenario), as the kolab daemon applies the recipient policy defined (and in the case of this ticket, changed).