HaRT wrote:Centaur
Не знаете ли, строка “This is a multi-part message in MIME format.” не из RFC ли? Подлежит ли она локализации?
Этот вопрос не имеет смысла. По RFC всё, что до первой пустой строки, является заголовками и должно следовать синтаксису заголовков. Эта строка не соответствует. Согласно синтаксису, описанному в RFC5322, такая строка не является заголовком. Но она и не может считаться началом тела, потому что между всеми заголовками и телом должна быть пустая строка. Таким образом, формально весь файл не является сообщением RFC5322.
Следуя генеральному принципу «либеральности в принимаемом и консервативности в производимом», логично игнорировать эту строчку при обработке и считать, что за ней могут следовать ещё заголовки.
Если же мы считаем эту строку частью тела (а конкрентее, преамбулой), то, конечно же, на неё не накладывается никаких ограничений (кроме общего требования, что тело состоит из строк (длиной не более 998 символов us-ascii 0x1..0x9, 0xB, 0xC, 0xE..0x7F), разделённых переводами строк CRLF (0xD 0xA)). Потребители должны игнорировать преамбулу; производители могут писать туда что-нибудь человекопонятное для тех, чья почточиталка (напоминаю, формат RFC822 исходно почтовый) ещё не умеет MIME.
Как бы то ни было, есть два пути: либо игнорировать строчку (независимо от того, является ли она кривым заголовком или началом кривого тела), либо отказываться обрабатывать всё сообщение.