自宅外から、自宅へのメールが届いていないことが判明。 原因を調べてみると、どうも postgrey が起動していない。 なんで起動しないのと、手作業で postgrey を起動していると、pid ファイルが原因ぽいことが 分ってきた。手作業で起動スクリプトを治そうとしたけど、 動いたり動かなかったり。改めて、"postgrey pidfile debian" で調べていたら、 perl 起動時の "-T" オプションあたりが関係していて、 その根本原因は、perl-base 5.18 になっているため。
作者がパッチを提供しているというけど、パッケージには反映されていないようなので、 パッチの差分を /usr/sbin/postfix に手作業で修正した。
if($opt{dbdir}) {
$opt{dbdir} =~ /^(.*)$/; $opt{dbdir} = $1;
}
+ # untaint what is given on --pidfile. It is not security sensitive since
+ # it is provided by the admin
+ if($opt{pidfile}) {
+ $opt{pidfile} =~ /^(.*)$/; $opt{pidfile} = $1;
+ }
+ # untaint what is given on --inet. It is not security sensitive since
+ # it is provided by the admin
+ if($opt{inet}) {
+ $opt{inet} =~ /^(.*)$/; $opt{inet} = $1;
+ }
# determine proper "logsock" for Sys::Syslog
my $syslog_logsock;