mirror of https://github.com/Cisco-Talos/clamav
parent
7b5efc383e
commit
768ff43926
@ -1,33 +0,0 @@ |
||||
#!/usr/bin/perl |
||||
|
||||
use strict; |
||||
use warnings; |
||||
|
||||
my %h = (); |
||||
my $added = 0; |
||||
my $found = 0; |
||||
my $notfound = 0; |
||||
|
||||
while(1) { |
||||
my $hash = ''; |
||||
last if(read(STDIN, $hash, 17) != 17); |
||||
my $op = substr($hash, 0, 1); |
||||
$hash = substr($hash, 1); |
||||
if($op eq "A") { |
||||
$h{$hash} = 1; |
||||
$added++; |
||||
} elsif ($op eq "C") { |
||||
if(exists($h{$hash})) { |
||||
$found++; |
||||
} else { |
||||
$notfound++; |
||||
} |
||||
} else { |
||||
die "bad command $op\n"; |
||||
} |
||||
} |
||||
|
||||
my $lookups = $found + $notfound; |
||||
print "added: $added\nlooked up: $lookups (found $found, not found $notfound)\n"; |
||||
printf "items in the hash: ".(scalar keys %h)."\n"; |
||||
|
@ -1,51 +0,0 @@ |
||||
#!/usr/bin/perl |
||||
|
||||
use strict; |
||||
use warnings; |
||||
|
||||
my ($event, $trace); |
||||
my %locks; |
||||
my $t; |
||||
|
||||
while(<>) { |
||||
chomp; |
||||
next if /^#/; |
||||
if (/^\s+(.*)-\d+\s+\[\d+\]\s+[0-9.]+: (.*) \(([0-9.]+) us\)$/) { |
||||
$locks{$trace} += $t if defined $t; |
||||
$t = $3; |
||||
$trace="$1: $2\n"; |
||||
next; |
||||
} |
||||
next unless s/^ => ([^\s])/$1/; |
||||
$trace.="$_\n"; |
||||
} |
||||
$locks{$trace} += $t+0 if defined $t; |
||||
|
||||
foreach (sort { $locks{$b} <=> $locks{$a} } keys %locks) { |
||||
last unless $locks{$_} >= 100000; |
||||
my @bt = split "\n"; |
||||
print "--- $locks{$_} us --- $bt[0]\n"; |
||||
my $i; |
||||
for ($i = 1; $i <= $#bt; $i++) { |
||||
my $l = $bt[$i]; |
||||
if ($l =~ /^(\/.*)\[\+(0x.*)\]$/) { |
||||
my $path = $1; |
||||
my $addr = $2; |
||||
my $code = `addr2line -fe "$path" $addr`; |
||||
my @spam = split("\n", $code); |
||||
if ($? != 0) { |
||||
$code = "$addr"; |
||||
} else { |
||||
$code = "$spam[0] - $spam[1]"; |
||||
} |
||||
$l = "$path [$code]"; |
||||
} elsif ($l =~ /^ /) { |
||||
$l.=" (unknown)"; |
||||
} else { |
||||
$l.=" (kernel)"; |
||||
} |
||||
|
||||
print "$l\n"; |
||||
} |
||||
print "\n"; |
||||
} |
Binary file not shown.
Loading…
Reference in new issue