Некорректная генерация MIME в заголовках писем
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 10.07.09 22:35
Оценка:
Проблема старая, но только сейчас дошли руки посмотреть, что происходит. Письма с новыми сообщениями приходят с заголовками, которые у меня в почте (mutt) не разбираются. Например:

From: "=?utf-8?Q?=D0=90=D0=BD=D0=BE=D0=BD=D0=B8=D0=BC (RSDN)?=" <forum@rsdn.ru>


Это не соответствует RFC2047, в котором (раздел 4.2):

(3) 8-bit values which correspond to printable ASCII characters other
than "=", "?", and "_" (underscore), MAY be represented as those
characters. (But see section 5 for restrictions.) In
particular, SPACE and TAB MUST NOT be represented as themselves
within encoded words.


Для передачи пробела допустимо использовать как =20, так и '_', согласно там же:

(2) The 8-bit hexadecimal value 20 (e.g., ISO-8859-1 SPACE) may be
represented as "_" (underscore, ASCII 95.). (This character may
not pass through some internetwork mail gateways, but its use
will greatly enhance readability of "Q" encoded data with mail
readers that do not support this encoding.) Note that the "_"
always represents hexadecimal 20, even if the SPACE character
occupies a different code position in the character set in use.


Редактирование заголовка с заменой этого пробела на '_' помогает увидеть правильное содержание, то есть после исправления на такое:

From: "=?utf-8?Q?=D0=90=D0=BD=D0=BE=D0=BD=D0=B8=D0=BC_(RSDN)?=" <forum@rsdn.ru>


(заменён пробел на '_' перед открывающей скобкой) начинает видеться в поле отправителя: "Аноним (RSDN)".

Причина введения неправильного квотинга пробела приблизительно понятна — видимо, в качестве образца был взят MS Outlook Express, в котором это было очень старым багом (по косвенным данным, в свежих версиях это исправлено, но ручаться не буду). Многие клиенты, опять же для совместимости с багами аутлука, понимают пробел внутри encoded-word как пробел. Но это не все существующие клиенты.;( Наоборот, я не видел проблем с чтением заголовков по RFC2047 даже у аутлука и тем более у других клиентов.

По сказанному, прошу привести генерацию заголовков писем к стандарту — или исправить пробел у Q-encoding, или как-то иначе (например, переключиться на B-encoding).
The God is real, unless declared integer.
Re: Некорректная генерация MIME в заголовках писем
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 23.08.09 09:20
Оценка:
"up", как говорят в соседнем форуме.
я надеюсь, что эта починка несложная...

N>По сказанному, прошу привести генерацию заголовков писем к стандарту — или исправить пробел у Q-encoding, или как-то иначе (например, переключиться на B-encoding).
The God is real, unless declared integer.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.