※ 商品リンクから購入されると少額の報酬が発生することがあります。
テスト用メールサーバ をpythonで作成してみました。
実はほぼマニュアルそのままではありますが、これから徐々にましにしてまこうと思います(1秒に1件までしか対応していないなんてありえないし)。
何がしたかったかというと、どんな宛先のメールでも(smtp的に問題が無ければ)全部受け取って、どこにも配送せずに保存してしまうメールサーバ(MTA)を作りたかったと。メール送信を含むテストを行うと、メールの宛先に神経質になる必要があるし、メールアドレスが一意になるような制限なんかがあるとこれまた面倒でしょ(いっぱいメールアドレス作る?qmailとか自由に使えればドットでエイリアス作ればいいけど)。
起動の仕方
BlackHoleSmtpd.pyを実行するだけ。25番で待ち受けるので特権が必要
$ sudo python BlackHoleSmtpd.py
想定される使用方法
自動テストで使用するメールサーバにBlackHoleSmtpdを実行しているマシンを指定する。 テストをして、サーバの直下にあるdataディレクトリの中を確認する。ヘッダ、本文、添付ファイルが別々に保存されているはず。
ひどいコードなので、ハックをしようとしてpythonのスゴさにびっくりする(^o^)