line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
package Archive::Cpio::Common; |
2
|
|
|
|
|
|
|
|
3
|
1
|
|
|
1
|
|
766
|
use Archive::Cpio::FileHandle_with_pushback; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
29
|
|
4
|
|
|
|
|
|
|
|
5
|
1
|
|
|
1
|
|
5
|
use Exporter; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
268
|
|
6
|
|
|
|
|
|
|
our @ISA = qw(Exporter); |
7
|
|
|
|
|
|
|
our @EXPORT = qw(padding write_or_die max begins_with); |
8
|
|
|
|
|
|
|
|
9
|
|
|
|
|
|
|
sub magics() { |
10
|
|
|
|
|
|
|
{ |
11
|
0
|
|
|
0
|
0
|
|
"070707" => 'ODC', |
12
|
|
|
|
|
|
|
"070701" => 'NewAscii', |
13
|
|
|
|
|
|
|
"\xC7\x71" => 'OldBinary', # swabbed 070707 |
14
|
|
|
|
|
|
|
"\x71\xC7" => 'OldBinary', # 070707 |
15
|
|
|
|
|
|
|
}; |
16
|
|
|
|
|
|
|
} |
17
|
|
|
|
|
|
|
|
18
|
|
|
|
|
|
|
sub padding { |
19
|
0
|
|
|
0
|
0
|
|
my ($nb, $offset) = @_; |
20
|
|
|
|
|
|
|
|
21
|
0
|
|
|
|
|
|
my $align = $offset % $nb; |
22
|
0
|
0
|
|
|
|
|
$align ? $nb - $align : 0; |
23
|
|
|
|
|
|
|
} |
24
|
|
|
|
|
|
|
|
25
|
|
|
|
|
|
|
sub write_or_die { |
26
|
0
|
|
|
0
|
0
|
|
my ($F, $val) = @_; |
27
|
0
|
0
|
|
|
|
|
print $F $val or die "writing failed: $!\n"; |
28
|
|
|
|
|
|
|
} |
29
|
|
|
|
|
|
|
|
30
|
0
|
|
0
|
0
|
0
|
|
sub max { my $n = shift; $_ > $n and $n = $_ foreach @_; $n } |
|
0
|
|
|
|
|
|
|
|
0
|
|
|
|
|
|
|
31
|
|
|
|
|
|
|
sub begins_with { |
32
|
0
|
|
|
0
|
0
|
|
my ($s, $prefix) = @_; |
33
|
0
|
|
|
|
|
|
index($s, $prefix) == 0; |
34
|
|
|
|
|
|
|
} |
35
|
|
|
|
|
|
|
|
36
|
|
|
|
|
|
|
1; |