学生プロジェクト用に bash のようなシェルをコーディングしています。perl
行コマンドの自動テスターを作成する必要があります。
my $cmd = "(echo \"foo\" | ./shell >& /dev/null)";
system($cmd);
if ($? == 35584) {
print "SIGSEGV";
}
elsif ($? == 34304) {
print "GLIB C";
}
else {
print "GOOD";
}
segfault
またはの出力を非表示にできるようにしたいglibc
。
@Marc Bわかりましたが、私のシェルは出力0で読み取ったので、「エコー」が必要です:s
@drquicksilver * glibc が検出されました./shell: free(): 無効なポインタ: 0x0000000000608291 * * OR セグメンテーション違反