忍者ブログ

[PR]

2017年12月17日
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

メールサーバーの個性

2009年03月23日
このところの相次ぐバージョンアップにより、現在リリース中の全ソフトがメール送信機能を持つ事になりました。これまで自分の自宅で契約しているインターネットプロバイダのメールサーバーで実験を繰り返していましたが、ある事情により別のメールサーバー用のアカウントを取得しました。そこで試しに実験をしていくと、今まで試していたメールサーバーと挙動が違う部分があることが判明しました。仕様のドキュメントなどに記載されているのかもしれませんが、今回判明したのは以下の2点でした。

  1. POPサーバーにリスト送信要求をした場合、一回の受信で最後まで受信できるサーバーもあれば、2回目の受信で".+CR+LF"だけを受け取る必要があるサーバーもある。
  2. メール送信時にテキスト送信でCRなしでLFが送信された場合、エラーを返して送信失敗になるサーバーもある。

私のソフトの場合、メール添付のファイルはどちらもテキストファイルのため、ファイルサイズを減らそうとBASE64でのエンコードは行っていません。そして、一度NSMutableStringにテキストを一気に生成し、文字数区切りで送信させていました。運悪くその区切りがCRとLFの間にある場合、CRを伴わないLFが送信されたと判断され、送信が失敗したものと思われます。結局これはNSMutableArrayに一行ごとにテキストを格納する事にしたところ、エラーを回避できるようになりました。サーバーの振る舞いにも個性があるものなのですね。ネットワーク関係で買った某参考書にはこれらのことは載っていませんでしたので、ちょっと驚かされました。
PR
Comment
  Vodafone絵文字 i-mode絵文字 Ezweb絵文字
Trackback
トラックバックURL: