[mew-dist 23347] Re: spamassassin
Hideyuki SHIRAI ( 白井秀行 )
shirai at example.com
2003年 3月 20日 (木) 12:27:50 JST
From: Yoshinori Sakamoto <yosino-s at example.com> さん曰く
Subject: [mew-dist 23319] Re: spamassassin
Message-ID: <20030319003717.BD28.YOSINO-S at example.com>
Date: Wed, 19 Mar 2003 00:39:02 +0900
> > Mail-SpamAssassin + Mew の環境を使っている人がどのくらいいるかわからな
> > いのですが、 ~/.spamassassin/user_prefs の blacklist_from 等へ追加/削
> > 除する機能があるとうれしいです。
>
> やー、だからこその、 smapassassin -a --add-to-blacklist の提案だったわけ
> ですが(^_-) これだと、mew 側は、渡して忘れてしまってもかまいません(^_-)。
ぼくの spamassassin には、whitelist だけで blacklist って無いなぁ。
と思ったのですが、2.50 にバージョンをあげたら出てきました。
Mew4 で動くかどうかはわかりませんが、Mew 3 向けにそっこーで作っ
てみました。From: の誤検出をなるだけ避けようと思い、cache を触っ
ています。
これで spamassassin の使い方あっていますか?
auto-whitelist には入っているようです。また、smapassassin 自体は、
procmail から
* ? spamassassin --auto-whitelist | formail -x X-Spam-Status: | egrep 'Yes'
な感じで動かしています。
(defun mew-add-spamassasin-blacklist (&optional white)
"From: を black list にいれる。C-u で white list にいれる。"
(interactive "P")
(let ((spamassassin (mew-which-exec "spamassassin")))
(if (null spamassassin)
(message "Install Spamassassin!!")
(mew-summary-not-in-queue
(mew-summary-not-in-draft
(mew-sinfo-set-disp-msg t)
(mew-summary-display)
(let* ((fld (mew-current-get-fld (mew-frame-id)))
(msg (mew-current-get-msg (mew-frame-id)))
(cache (mew-cache-hit fld msg 'must-hit))
froms from)
(save-excursion
(set-buffer cache)
(save-excursion
(goto-char (point-min))
(setq froms (mew-header-get-value "From:"))))
(if (null froms)
(message "No From:")
(setq froms (mew-addrstr-parse-address-list froms))
(while (setq from (car froms))
(setq from (downcase from))
(when (y-or-n-p (format "Add `%s' to %s? " from
(if white "*WHITE* list" "*BLACK* list")))
(message "Add `%s' to %s..." from
(if white "WHITE list" "BLACK list"))
(apply 'call-process spamassassin nil nil nil
(list "--auto-whitelist"
(format "--add-addr-to-blacklist=%s"
(if white "whitelist" "blacklist") from)))
(message "Add `%s' to %s...done" from
(if white "WHITE list" "BLACK list")))
(setq froms (cdr froms))))))))))
この機能、前から欲しかったんです。今までは、あぁ SPAM がフィルタ
通り抜けてきたぜ、というときには ~/.procmailrc に書き加えていま
した。最近は、一日 2〜3回ですが、昔は大変だった。
ちなみに
--remove-addr-from-whitelist=addr Remove addr from whitelist
というオプションもありますね。
--
白井秀行 (mailto:shirai at example.com)
Mew-dist メーリングリストの案内