_ spamフィルタ(4)
1日様子を見たら80個ほどのスパムをブロックできたようだ。えらい手抜きだけどこんな感じ。
--- tdiary/filter/spam.rb 7 Aug 2005 08:38:56 -0000 1.2
+++ tdiary/filter/spam.rb 7 Aug 2005 16:09:37 -0000
@@ -153,2 +152,7 @@ def comment_filter( diary, comment )
#debug( "comment_filter start" )
+ if Time.now - diary.date > 86400 * 30
+ debug( "too old: #{diary.date}" )
+ return false
+ end
+
if %r{/\.\/} =~ ENV['REQUEST_URI']
良く考えたら、
昨日のパッチは0以上かどうかという判定はまるごといらないかな。
_ [Comp] 標準エラー出力をsyslogに送る
Mew 4.xではS/MIMEの処理にgpgsmを使うようだ。が、試してみるとうまくいかない。エラーメッセージを見るために、標準エラー出力をsyslogに送りつつ、その内容は変更せずにやはり標準エラー出力から出力するためにスクリプトを書いてみた。
#!/bin/sh
echo $(basename $0) "$@"|logger
fifo=$HOME/.gnupg/fifo
[ -p $fifo ] || mkfifo $fifo
cat $fifo|logger &
exec 3>&1
/usr/pkg/bin/gpgsm "$@" 2>&1 1>&3 3>&-|tee $fifo 1>&2 3>&-
でも、もっと簡単な方法があるに違いない。
_ [Comp] 標準エラー出力をsyslogに送る(2)
というわけで、
#!/usr/pkg/bin/zsh
echo $(basename $0) "$@"|logger
/usr/pkg/bin/gpgsm "$@" 2> >(tee >(logger) >&2)
これだけでいいらしい。あ、ということは、いちいちテンポラリファイルを作らなくても、
% diff -U0 <(ls /usr/lib|sort) <(ls /lib|sort)|lv
という感じで、コマンドの出力をそのままファイル名経由で渡せるのか。知らなかった…。
/usr/pkg/bin/gpgsm "$@" 2> >(tee >(logger))
じゃダメ?
おぉ。そんなのが。
/bin/shでは使えないのがちょっと残念。
http://www.stlouisbusinesslist.com/business/5021837.htm?info=viagra buy viagra 袢