dsync having problems with @-sign in mailbox names
Philip Iezzi
lists at iezzi.ch
Sat Sep 28 12:52:25 EEST 2019
> On 28 Sep 2019, at 11:48, Philip Iezzi via dovecot <dovecot at dovecot.org> wrote:
>
>
>> On 28 Sep 2019, at 11:28, Sami Ketola via dovecot <dovecot at dovecot.org> wrote:
>>
>>
>>
>>> On 28 Sep 2019, at 12.21, Philip Iezzi via dovecot <dovecot at dovecot.org> wrote:
>>>
>>> Hi there
>>>
>>> We are running Cyrus-to-Dovecot migrations using dsync on destination Dovecot server (Debian Stretch / latest Dovecot 2.3.7.2 from community repo) like this:
>>>
>>> $ doveadm -o mail_fsync=never backup -R -u <username> imapc:
>>>
>>> For imapc configuration to connect to remote Cyrus server, see below [1].
>>> While this works great for hundreds of mailaccounts, dsync fails with the following error on accounts with @-sign in mailbox names:
>>>
>>> dsync(<username>): Error: Failed to access mailbox INBOX/entrance/admin at example: Invalid mailbox name
>>>
>>> I can confirm, Dovecot supports @-sign in mailbox names and no client (tested with Thunderbird, Apple Mail, Roundcube webmail) has issue with this character.
>>> Also Cyrus was always supporting this. So I guess this is an issue with dsync. Can we somehow tune charset (UTF-8 ?) in imapc configuration?
>>>
>>
>> Hi,
>>
>> can you please try to record imapc rawlogs for such an session? I would like to see what kind of mUTF7 name string Cyrus sends for these folders that have special characters.
>> We have been able to work around some of the broken mUTF7 implementations with some BROKENCHAR magic.
>>
>> Sami
>
> Hi Sami,
>
> Thanks for your support. I have tried the following...
> Added this to conf.d/20-imap.conf:
>
> protocol imap {
> rawlog_dir = /tmp/rawlog/%u
> }
>
> Then restarted Dovecot, and re-run the following dsync migration:
>
> $ doveadm -o mail_fsync=never backup -R -u <username> imapc:
> dsync(<username>): Info: imapc(imap.example.com:993): Connected to x.x.x.x:993 (local y.y.y.y:45726)
> dsync(<username>): Error: Failed to access mailbox INBOX/entrance/admin at example: Invalid mailbox name
>
> Then checked /tmp/rawlog, which is still empty. According to https://wiki.dovecot.org/Debugging/Rawlog, setting `rawlog_dir` should be the only thing needed, right? What did I do wrong?
> I am glad to provide you the raw logs as soon as I can generate them.
>
> Thanks,
> Philip
okay, I probably just need to configure rawlog as post-logins script...
service imap {
executable = imap postlogin
}
service pop3 {
executable = pop3 postlogin
}
service postlogin {
executable = script-login -d rawlog
unix_listener postlogin {
}
}
Need to change trains now, will try later.
Best,
Philip
More information about the dovecot
mailing list