[mew-dist 19725] Re: subjectのbase64(複数行)について

Shun-ichi GOTO gotoh at example.com
2001年 11月 28日 (水) 02:00:57 JST


>>>>> at Wed, 28 Nov 2001 00:00:11 +0900
>>>>> ogi == Hironori OGIBAYASHI <ogi at example.com> said,

> foldingは「multiple 'encoded-word's (separated by CRLF SPACE)」に
> よって実現されます。
> 
> つまり、複数行に分かれたそれぞれが、encoded-wordとして正しくある
> べきです。

ogi> しかし、decode状態での文字列が例えば最後にK-OUTのないJIS文字列で
ogi> あったとしても、それが正しくencodeされていればencoded-wordとしては
ogi> 正しいのではないでしょうか?

だめです。byte 列をencoding するという操作で言えばそういう考え方もアリで
しょうが、encoded word の前後はus-asciiである必要があります。これは複数
のencoded word にまたがってmodeを持ち越さないために必要な措置で、つまり
encoded word 内でiso-2022-jpにシフトしたならば、encoded wordを終了した時
点でus-asciiに戻っていなければならない、と定義されています。

See RFC2047

> 3. Character sets
...snip...
>    Some character sets use code-switching techniques to switch between
>    "ASCII mode" and other modes.  If unencoded text in an 'encoded-word'
>    contains a sequence which causes the charset interpreter to switch
>    out of ASCII mode, it MUST contain additional control codes such that
>    ASCII mode is again selected at the end of the 'encoded-word'.  (This
>    rule applies separately to each 'encoded-word', including adjacent
>    'encoded-word's within a single header field.)


ogi> そして、unfoldingのルールに従ってCRLFとspaceを除いて一行にすれば
ogi> 本来は正しいJIS文字列になるのかな、と思うのですが。

byte列の結合として扱えばそれも可能ですが、MIMEでは許されていません。


--- Regards,
 Shun-ichi Goto  <gotoh at example.com>
   R&D Group, TAIYO Corp., Tokyo, JAPAN



Mew-dist メーリングリストの案内