人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

「Mercury/32 v4.73」と「Windows Server 2008 Service Pack 2」で質問です。

「Mercury/32 v4.73」のSMTPサーバ(MercuryS)もしくはPOP3サーバ(MercuryP)は、
添付ファイルBase64部分が改行されていないメールデータが送られると、途中でデータを破壊する仕様なのでしょうか?
それとも、何か設定で改善できるものなのでしょうか?

Base64部分が、ある程度の文字列で全て改行されているメールデータは正常に受信できただけに分からなくなってしまい、相談した次第です。

なお、セキュリティソフトには、ClamWinを使用しています。
よろしくお願いします。

●質問者: くじぇ
●カテゴリ:コンピュータ インターネット
✍キーワード:base64 ClamWin POP3 Service Pack SMTP
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● saijyoh_739
●35ポイント

一行が非常に長いメールは長すぎる部分が届かない事は多いです。

実際、一行1000文字越えるメールを送りつけられた時には998文字を越えた部分が消えてましたし。

仕様という話なら、

RFC2822

2.1.1. Line Length Limits

There are two limits that this standard places on the number of characters in a line. Each line of characters MUST be no more than 998 characters, and SHOULD be no more than 78 characters, excluding

the CRLF.

http://www.puni.net/~mimori/rfc/rfc2822.txt

上記ページの翻訳文を引用すれば

## 行の長さの制限

##

## この標準では1行中の文字数に2つの制限がある。それぞれの行の文字はCRLF

## を除いて、決して998文字以下でなければならず(MUST)、78文字以下であるべ

## きである(SHOULD)。

改行なしに998文字を越えれば、どのメールサーバでも正常に配送される事は期待できません。


> 「Mercury/32 v4.73」のSMTPサーバ(MercuryS)もしくはPOP3サーバ(MercuryP)は、

> 添付ファイルBase64部分が改行されていないメールデータが送られると、途中でデータを破壊する仕様なのでしょうか?

SMTPの仕様が998文字以内ですから、SMTPを実装した様々なメールサーバがその仕様で作られています。使っているSMTPサーバを改変し依り長いメールが配送できるように変えても普通のメールサーバを一つ介せばそれで長い部分は破棄されると思います。

◎質問者からの返答

saijyoh_739さんありがとうございます。

送る側のデータが、そもそもRFC2822を無視して998文字以上超えている方が悪いということですね。

送り側で改善できるか、今後参考にさせて頂きます。

…が、今すぐはこの長文データを何とかする必要がありますので、そこをMercury上でなんとかする方法はないもんでしょうかorz


2 ● saijyoh_739
●35ポイント

> 送り側で改善できるか、今後参考にさせて頂きます。

> …が、今すぐはこの長文データを何とかする必要があります

> Mercury上でなんとかする方法はないもんでしょうかorz

送り側(固定)→(IPトンネル)ClamWin(IPトンネル)→Mercury

上記の様な感じかな。

ClamWinってオープンソースならその出力部分で1000文字を越える行は改行を追加するなど改造したり、もう一段IPトンネル入れて単機能の変換ソフトをでっち上げて入れちゃうっていうのが楽な気がします。(Mercury上でなんとかするより)

※長すぎるデータはClamWinもチェックできてないかも知れませんしMercuryやその後のソフトが捨てちゃう危険もあります。メール関係のソフトは全て一行1000文字を越えるデータを扱う事は想定されてませんのでたまたま1500文字で動いたからといって1600文字で問題が起こらないとは言えませんので。

※全部検証するよりMercuryに入る前で扱えるデータに変えてしまって対応する方が良さそうに感じました。本当はClamWinの手前が良いのだろうな。

※どこかでバッファオーバフロー状態になりセキュリティ上の問題が起こらないとも限りませんし。

2回目の回答なので今回が最後です。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ