File Coverage

blib/lib/Crypt/PK.pm
Criterion Covered Total %
statement 21 21 100.0
branch 4 6 66.6
condition n/a
subroutine 4 4 100.0
pod n/a
total 29 31 93.5


line stmt bran cond sub pod time code
1             package Crypt::PK;
2              
3 13     13   85 use strict;
  13         17  
  13         429  
4 13     13   42 use warnings;
  13         15  
  13         774  
5             our $VERSION = '0.087_002';
6              
7 13     13   57 use Carp;
  13         29  
  13         2182  
8              
9             sub _ssh_parse {
10 11     11   29 my $raw = shift;
11 11 50       37 return unless defined $raw;
12 11         26 my $len = length($raw);
13 11         21 my @parts = ();
14 11         20 my $i = 0;
15 11         21 while (1) {
16 45 100       81 last unless $i + 4 <= $len;
17 34         79 my $part_len = unpack("N4", substr($raw, $i, 4));
18 34 50       63 last unless $i + 4 + $part_len <= $len;
19 34         75 push @parts, substr($raw, $i + 4, $part_len);
20 34         42 $i += $part_len + 4;
21             }
22 11         49 return @parts;
23             }
24              
25             1;
26              
27             =pod
28              
29             =head1 NAME
30              
31             Crypt::PK - [internal only]
32              
33             =cut