1 - Пробовал папку "Foo & Bar" создавал через веб-почту.
2 - С другим сервером (Fastmail) работает, проверил. С Mail.ru тоже.
3 - Яндекс возвращает имя папки вот так:
"Foo&AKAAJgCg-Bar"
Это означает:
"Foo & Bar" -- но не пробелы, а символы с кодом 0xA0, "non-breakable space" (пробел запрещающий перенос).
Не знаю, зачем они меняют обычные пробелы на "неразрывные", но меняют.
Ошибка №1 (не очень существенная).
Ладно, с этим Аква справляется.
4 - При проверке почты, Аква кодирует имя папки (какую папку выбирать) вот так:
"Foo&AKA-&-&AKA-Bar"
И Яндекс отвечает "такой папки нет".
5 - Наблюдательный читатель заметит, что результат кодирования имени Аквой отличается от того, что изначально вернул сервер.
Однако:
1 - Оба варианта, "Foo&AKAAJgCg-Bar" (вернул Яндекс) и "Foo&AKA-&-&AKA-Bar" (закодировала Аква) декодируются в одно и то же имя папки.
Так что сервер должен "узнать" папку, сначала декодировать, потом смотреть по декодированному имени.
Но видимо "распознавание" папки у Яндекса происходит *до* декодирования имени.
Ошибка №2.
2 - Спецификация IMAP "английским по белому" сообщает что
https://tools.ietf.org/html/rfc3501#section-5.1.3- The character "&" (0x26) is represented by the two-octet sequence "&-".
И далее:
- Modified BASE64 MUST NOT be used to represent any printing US-ASCII character which can represent itself.
То есть:
- Символ "&" кодируется как "&-"
- Кодировку base64 ЗАПРЕЩЕНО использовать для символов для которых она не требуется.
Так что из двух вариантов кодировки - именно вариант Аквы ("Foo&AKA-&-&AKA-Bar") правильный, а вариант сервера Яндекса ("Foo&AKAAJgCg-Bar") неправильный.
Ошибка №3.
---
Ошибки (3 штуки) Яндекса а не наши, пожалуйста пишите в их поддержку.