Достаточно ли печатать по кавычкам, чтобы сделать письмо совместимым с ограничением длины строки, установленным в RFC 2822?


9

В RFC 2822 (определение E-Mail) определено, что ни одна строка НЕ ​​ДОЛЖНА быть длиннее 78 символов (исключая CRLF) и ДОЛЖНА быть не длиннее 998 символов. При использовании кавычек для печати более длинные строки будут разбиты на несколько строк, каждая из которых будет заканчиваться символом «=», пока не будет достигнут настоящий разрыв строки. Соответствует ли письмо стандарту, если оно содержит строки длиной более 78 (или 998) символов, но закодировано в кавычках для печати?

Существуют аргументы, что это не соответствует требованиям, потому что принимающий почтовый клиент имеет более длинные строки после декодирования сообщения в кавычках.

РЕДАКТИРОВАТЬ : Чтобы уточнить вопрос так, как задал Дэвид Кэри: Да, я имею в виду, что зашифрованная почта, напечатанная на кавычках, должна быть совместима с печатаемой на кавычках, то есть строки длиной не более 76 символов. Но декодированные сообщения могут иметь более длинные строки, чем этот предел. Итак, мой вопрос: должно ли клиентское программное обеспечение, реализующее RFC 1521, обрабатывать бесконечно длинные строки после декодирования цитируемого текста для печати? На этот вопрос да, оба ответа до сих пор (спасибо) с ограничением, что он не одобряется Сетевым этикетом (RFC 1855). Но Сетевой этикет даже ограничивает длину строки до 65 символов, что почти никто не соблюдает.

Ответы:


3

Я не уверен, что вы спрашиваете:

принимающий почтовый клиент находит длинные строки перед декодированием цитируемой для печати

Скажем, программное обеспечение кодирования для цитирования, которое можно печатать на передающем конце, просто заключает в кавычки непечатаемые буквы, делая результирующую закодированную строку длиннее исходной, без добавления «мягких разрывов строк», в результате чего закодированная строка длиннее предела.

Это не соответствует.

Строки закодированных для печати кодированных данных не должны быть длиннее 76 символов. Чтобы удовлетворить это требование без изменения закодированного текста, можно добавить мягкие разрывы строк ... Эти мягкие разрывы строк также позволяют кодировать текст без разрывов строк (или содержащих очень длинные строки) для среды, в которой размер строки ограничен, например, " Ограничение в 1000 символов на строку в некоторых программах SMTP, разрешенное RFC 2821.

- Википедия: цитируемая для печати , перефразирующая RFC2045 .

закодированные строки короткие, но принимающий почтовый клиент обнаруживает длинные строки после декодирования quoted-printable

Это соответствует RFC2822 и RFC2045 и должно поддерживаться всеми программами.

Тем не менее, создание таких сообщений не рекомендуется в соответствии с некоторыми Правилами сетевого этикета, включая страницу 3 RFC 1855 "Руководящие принципы сетевого этикета".


RFC 1855 содержит ряд странных понятий, таких как ограничение размера вложения до 50 КБ или идею о том, что кто-либо на планете все еще использует Gopher для серьезных целей.
Кевин

9

Это определенно соответствует. Весь смысл Quoted-Printable и остальных серий RFC MIME (RFC 2045 - RFC 2049) заключается в том, чтобы разрешить кодирование данных, которые в противном случае были бы недействительными в электронной почте. RFC 2822 явно (и неоднократно!) Указывает читателям на эти RFC для получения информации о том, как это сделать.


1
+1 Ограничение линии накладывается не на сообщение, а на передачу сообщения.
Крис С

3

Если вы действительно хотите узнать, насколько сложно создать совместимый компоновщик и анализатор электронной почты, вы должны посмотреть это видео на Youtube: http://www.youtube.com/watch?v=JENdgiAPD6c

Рикардо Сигнес дает взгляд изнутри на различные RFC и какую глупость они привносят в реальную жизнь.

Это 40 минут и только царапает поверхность плохого и хорошего "содержимого" электронной почты. После просмотра вы измените свое мнение о почтовом программном обеспечении, которое, по вашему мнению, соответствует стандартам электронной почты.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.