]> Google ChromeでOutlook.comからメールを送った時の話 | FullAstern!

Notes

メモ書き

Google ChromeでOutlook.comからメールを送った時の話

Outlook.com

諸事情あって初対面のある人にお礼状のメールを送ろうと いつも通りChromeからOutlook.com (Hotmail)を開いて先方宛にメールを書いて送信した時のことです。 しばらくして届いた先方からの返事には 改行されていない、ものすごーーーく長いメールになっています とのご指摘。慌てて原因を探ります。

Outlook.comから手持ちの様々なメールアドレス、メーラーの組み合わせにメールを送ってみる。 しかし言われた様な症状は再現しない。

次に相手側の環境を疑いました。スゴイ・シツレイ 先ほどの返事メールのヘッダを調べると、「X-Mailer: EdMax Ver2.86.3F」の文字。 どうやら相手方はEdMaxなるメーラーを使っている模様。 早速MyPCにもインストールして検証します。

ながーーーい本文

出ました。 しっかり改行したはずの本文がモノの見事に一直線に表示されています。 改行部分には「↑」のような文字。これ、どこかで見覚えありますね。 Windowsのnotepadで改行コードがLFなtxtを開いたときのアレです。 notepadはCRLF以外の改行コードを正しく解釈できないため、同じような症状が発生します。

この時点で僕はEdMaxが改行コードがLFなメールを正しく処理できないのが悪い。原因は相手にある。と結論しかけました。 しかし、その後すぐにそもそもメールの改行コードってどれが正しいんだ?と疑問が浮かびます。 RFC 2822の2章3節を見ると

メッセージのボディは単にUS-ASCII文字の列である。ボディに課せられたたった2つの制限は以下の通り。

  • CRとLFはCRLFとして一緒に現れねばならない(MUST)。ボディに独立して現れてはならない(MUST NOT)。
  • ボディ中、ラインの文字数はCRLFを除き998に制限されねばならず(MUST)、78に制限されるべきである(SHOULD)。
RFC 2822

どうやら改行コードがLFのみのメールはRFC違反らしい。 今まで問題に気付かなかった原因は、殆どのメーラーが改行コードの違いを気にしないからでしょうか。 やっぱり悪いのはこっちじゃないか と分かったところで、何故RFC違反のメールが送られたか原因を探ります。 改行コードがLFになる条件を検証した結果

  • iOSの内蔵メールアプリやサードパーティのメーラーからOutlookのメールアカウントを経由して送った場合→CRLFで改行
  • IEからOutlook.comを開いてWebアプリから送った場合→CRLFで改行
  • Google ChromeからOutlook.comを開いてWebアプリから送った場合→LFで改行

Outlook.comのWebアプリ、またはChromeが悪さをしているようです。 Chrome+Outlook.comでメールを送るのはNGと見て良さそう。 FirefoxやOperaは試してないので判りません。 とりあえず件の症状は、こちらがサードパーティのメーラーを使うことで解決しました。

© FullAstern!