clamsmtp-0.3はやはり何か壊れていた模様。 ChangeLogより
0.4 Option for quarantining files with viruses Fixed problem with returning wrong SMTP error code Handling timeouts properly Fixed stupid problem with sockets not getting closed properly
送信側の concurrencyremote は60に増やしてから、 48通溜めてから一気に送信してみたら、問題なく受け取れるようになった。 また、-qオプションでウィルス検出した場合、メールを一時ディレクトリに保存することができるようにもなった。
daemontoolsの run スクリプトは以下の通り。
#!/bin/sh
PATH=/local/sbin:/usr/local/bin:/usr/bin:/bin
export PATH
exec 2>&1
exec softlimit -c 0 \
envdir ./env \
setuidgid clamav \
clamsmtpd -q -d3 -D/home/clamsmtp -l0.0.0.0:10025 127.0.0.1:25
30KB程度のウィルスメールを使って実行時間を計ってみた。clamscanが1.47秒、clamdscanが0.02秒。
もいっこ500KB程度のウィルスメールを使って実行時間を計ってみた。clamscanが4.23秒、clamdscanが2.79秒。 …定義ファイルを読むのに1.45秒ぐらいかかるってことのようだ。