ホーム » コンピュータ » Linux » Debian » perl-base 5.18 を入れたら postgrey が動かなくなっていた

システム

最近の投稿

アーカイブ

カテゴリー

perl-base 5.18 を入れたら postgrey が動かなくなっていた

自宅外から、自宅へのメールが届いていないことが判明。 原因を調べてみると、どうも 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;

Google 検索

My Google   Yahoo

Microsoft

ファンサイト