Perl CGI スクリプトを汚染モードで実行すると、次のようなエラーが発生します...
Insecure dependency in some_function while running with -T switch at (eval some_line) line some_other_line.
Compilation failed in require at my-script.cgi line 39.
BEGIN failed--compilation aborted at my-script.cgi line 39.
my-script.cgi の 39 行目は、それ自体は eval または some_function を使用しないが、おそらく使用する別のライブラリを使用する perl モジュールの use ステートメントです。some_line および some_other_line の行番号は、my-script.cgi または my-script.cgi の 39 行目で「使用」されているライブラリで意味をなさないようです。
このエラーが発生した場合、汚染エラーが発生している場所を追跡するにはどうすればよいですか?
スタック トレースを出力する新しいダイ シグナル ハンドラを設定しようとしました。
$SIG{ __DIE__ } = sub { require Carp; Carp::confess(@_); };
しかし、これはエラーには影響しないようです。おそらく、これはトラッピングであるという誤ったシグナルであるか、十分に早期に発生していないか、より複雑な何かが必要です。