Branch Coverage

lib/SMB/Auth.pm
Criterion Covered Total %
branch 89 128 69.5


line true false branch
111 0 0 unless ref $user_passwords eq 'HASH'
182 0 0 unless open PASSWD, "<$filename"
184 0 0 unless close PASSWD
189 0 0 if $_ eq ':'
192 0 0 ($hash_str || '') =~ /^[0-9a-f]{64}$/ ? :
194 0 0 $username && $username =~ /^\w[\w.+-]*$/ && @hash_bytes ? :
212 0 1 unless $hmac
217 0 1 ref $password eq 'ARRAY' ? :
223 0 1 unless $hmac eq &hmac_md5($self->server_challenge . $client_data, $ntlmv2_hash)
236 6 35 if ($len >= 128)
248 3 38 if ($tag == 4) { }
9 29 elsif ($tag == 6) { }
2 27 elsif ($tag == 10) { }
12 15 elsif ($tag == 48 or $tag == 49 or $tag == 96) { }
15 0 elsif ($tag >= 160 and $tag <= 163) { }
255 9 69 if (0 == $idx++) { }
6 63 elsif ($_ >= 128) { }
261 0 2 unless $len == 1
281 3 38 if ($tag == 4) { }
9 29 elsif ($tag == 6) { }
2 27 elsif ($tag == 10) { }
12 15 elsif ($tag == 48 or $tag == 49 or $tag == 96) { }
15 0 elsif ($tag >= 160 and $tag <= 163) { }
287 0 63 $_ >= 268435456 ? :
0 63 $_ >= 2097152 ? :
0 63 $_ >= 16384 ? :
6 57 $_ >= 128 ? :
9 63 2 == $idx ? :
9 72 0 == $idx++ ? :
314 6 35 @sub_lens ? :
325 0 6 unless @bytes > 2
328 0 6 if (substr($buffer, 0, 8) eq "NTLMSSP\000") { }
334 0 6 unless $struct
337 2 4 if (not defined $self->ntlmssp_supported or $options{'is_initial'})
339 0 2 unless ref $value eq 'ARRAY' and shift @$value == 48
342 2 2 if $_->[0] == 6 and $_->[1] eq '1.3.6.1.4.1.311.2.2.10'
349 3 1 ref $value eq 'ARRAY' && shift @$value == 4 ? :
353 3 1 unless (defined $self->client_challenge)
354 0 3 unless $ntlmssp_bytes
357 0 3 unless $parser->bytes(8) eq "NTLMSSP\000"
361 1 3 if (not defined $self->client_host) { }
1 2 elsif (not defined $self->server_challenge) { }
1 1 elsif (not defined $self->client_challenge) { }
1 0 elsif (not defined $self->auth_completed) { }
362 0 1 unless $parser->uint32 == 1
373 0 1 unless $parser->uint32 == 2
383 1 5 if $itemtype == 7
386 1 4 if $itemtype == 1
388 1 4 if $itemtype == 2
390 1 4 if $itemtype == 3
392 1 4 if $itemtype == 4
397 0 1 if ($message_type == 1)
401 0 1 unless $message_type == 3
425 0 1 unless ref $value eq 'ARRAY' and shift @$value == 10
427 1 0 shift @$value == 0 ? :
441 2 4 if (not defined $self->ntlmssp_supported or $options{'is_initial'})
459 1 3 if (not defined $self->client_host) { }
1 2 elsif (not defined $self->server_challenge) { }
1 1 elsif (not defined $self->client_challenge) { }
1 0 elsif (not defined $self->auth_completed) { }
533 0 1 if $self->{'is_raw_ntlmssp'}
623 1 0 $is_anonymous || $self->is_user_authenticated ? :
625 1 0 if $self->auth_completed
633 0 6 unless $struct