Maia Mailguardのダイジェストメールの日本語化ではお付き合い頂きありがとうございました。
近頃、気になっていることに、maia mailguardの使う、amavisd-newの処理が行き詰まる問題がありまして、不具合の特徴として、ISO-2022-JPが宣言されているにもかかわらず、中身がShift-JISで書かれているという共通点があります。queueにずっと残ったままになります。
私の環境ではPostgreSQLを使っています。PostgreSQLでは、SQLインジェクションに対応するため、PostgreSQL8.1.4以降、エンコードをよく見てくれます。SQL_ASCIIで作ったデータベース上で、EUC_JP混じりのSQLを実行しようものなら、「ERROR: invalid byte sequence for encoding "EUC_JP": 0xe296」といような指摘をされます。
mailqでは下記のようなログが出て処理できません。「invalid byte sequence for encoding "EUC_JP": 0x8e84」などと出ていますが、他の文字コードでも試したところ、うまくいかずでして、エンコーディングがSQL_ASCII、EUC_JPという場合も不具合があるままです。
-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
CE7451702A 1699 Sat Dec 9 11:35:10 spam@mail.com
(host 127.0.0.1[127.0.0.1] said: 451 4.5.0 Error in processing, id=63015-04, spam_scan FAILED: DBD::Pg::st execute failed: ERROR: invalid byte sequence for encoding "EUC_JP": 0x8e84 (in reply to end of DATA command))
myaddress@myaddress.com
試しに、別サーバでMySQLを使ってみると、同様の問題は出てきませんし、PostgreSQLにおけるエラーがシェル上でsqlを実行しようが、mailqに出てくるエラーログだろうが、主旨は同じであろうと理解しました。よって、amavisd-maiaには、SQLインジェクションに対応しないといけないのでしょうが、私の手には余ります。何か良い策がないかと掲示板に書いてみます。皆さんの知恵を拝借願えないでしょうか。
ちなみに、現状は、cronにて時々、amavisd-newを使って、maia mailguardを経由させないで配信しています。しかし、不具合を抱えるメールのほぼ全てがスパムでして、maia mailguardを経由させないのであれば、意味がない行動を取っているとも言えます。無論、放置すれば、膨大なqueueになってしまいます。queueを削除するのも、大事なメールが混じっていてはいけないしやっていません。