RFC: 2060
Оригинал: Internet Message Access Protocol v.4 rev.1
Другие версии: RFC 1730, RFC 3501
Категория: Предложенный стандарт
Дата публикации:
Автор:
Перевод: Николай Малых

6.3.5. Команда RENAME

Аргументы:имя существующего почтового ящика, имя нового почтового ящика
Отклик:для этой команды не существует специфических откликов
Результат:OK — успешная смена имени
NO — не удалось изменить имя (нет такого почтового ящика или новое имя уже используется)
BAD — команда не поддерживается или некорректны аргументы

Команда RENAME служит для изменения имени почтового ящика. Помеченный отклик OK возвращается только после успешного изменения имени. Попытка переименовать несуществующий почтовый ящик или задать в качестве нового уже используемое имя приводит к ошибке. В случае любой ошибки возвращается помеченный отклик NO.

При замене имени почтового ящика, имеющего нижележащие уровни, их имена также ДОЛЖНЫ изменяться. Например, при смене имени foo на zap имя foo/bar ("/" является разделителем уровней) должно стать zap/bar.

Максимальное значение уникального идентификатора для ящика, имя которого изменяется, должно сохраняться, чтобы при создании нового ящика с этим именем не возникало повторного использования идентификаторов, если для нового ящика не задается другое значение уникального идентификатора корректности (см. описание команды UID).

Допускается переименование почтового ящика INBOX при выполнении определенных условий — все сообщения из INBOX перемещаются в почтовый ящик с новым именем и создается заново пустой почтовый ящик INBOX. Если реализация сервера поддерживает иерархию имен в INBOX, на эту иерархию не действует переименование INBOX.

Пример:  C: A682 LIST "" *
         S: * LIST () "/" blurdybloop
         S: * LIST (\Noselect) "/" foo
         S: * LIST () "/" foo/bar
         S: A682 OK LIST completed
         C: A683 RENAME blurdybloop sarasoop
         S: A683 OK RENAME completed
         C: A684 RENAME foo zowie
         S: A684 OK RENAME Completed
         C: A685 LIST "" *
         S: * LIST () "/" sarasoop
         S: * LIST (\Noselect) "/" zowie
         S: * LIST () "/" zowie/bar
         S: A685 OK LIST completed
         C: Z432 LIST "" *
         S: * LIST () "." INBOX
         S: * LIST () "." INBOX.bar
         S: Z432 OK LIST completed
         C: Z433 RENAME INBOX old-mail
         S: Z433 OK RENAME completed
         C: Z434 LIST "" *
         S: * LIST () "." INBOX
         S: * LIST () "." INBOX.bar
         S: * LIST () "." old-mail
         S: Z434 OK LIST completed
2007 - 2017 © Русские переводы RFC, IETF, ISOC.