[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:31952] pop-before-smtp パッケージの $pat マッチング



こんにちは。松田陽一@PAL-NET三鷹です。

qpopper と postfix と pop-before-smtp パッケージをインストールして、
pop-before-smtp の設定がなかなか出来ずにいましたが、今しがたようやく
できました。

/var/log/mail.log の記録は:

Mar  3 11:25:04 neptune in.qpopper[25063]: (v4.0.3) POP login by user "matsuda" at (YahooBB218132144042.bbtec.net) 218.132.144.42 [pop_log.c:244]

となります。
これにパターンマッチングさせるための
/etc/pop-before-smtp/pop-before-smtp.conf の記述は:

pat = '^(... .. ..:..:..) \S+ in\.qpopper\S+\d+.+ POP login by user "[a-z]+" at \(.+\) (\d+.\d+.\d+.\d+)'

とする必要がありました。
どこでハマったかと言いますと:

pat = '^(... .. ..:..:..) \S+ in\.qpopper\S+\[\d+\].+ POP login by user "[a-z]+" at \(.+\) (\d+.\d+.\d+.\d+)'

とするとマッチングしてくれませんでした。
つまり、 "\[" と "\]" が入るとマッチングに失敗することがわかりました。

しかし、 pop-before-smtp は perl のスクリプトですし、 "\[" は正規表現
としては正しい表記だと思いますし、このパッケージの設定例にも多用されて
います。
なぜこのパターンが使えないのか、不思議です。
解決は一応できたはものの、なんだかすっきりしません。
どなたかこの原因をご存知の方、いらっしゃいませんでしょうか。
--
夜に帰るため夜に帰るため夜に。
松田 陽一(yoh)
mailto:matsuda@xxxxxxxxxxxx
http://www2.palnet.or.jp/~matsuda/index.htm