Branch Coverage

blib/lib/Authen/SASL/Perl/DIGEST_MD5.pm
Criterion Covered Total %
branch 78 148 52.7


line true false branch
156 0 8 if (not ref $options or ref $options ne "HASH")
166 7 1 unless $options->{'no_integrity'}
169 0 7 unless $options->{'no_integrity'} or $options->{'no_confidentiality'} or $NO_CRYPT_AVAILABLE
243 0 11 unless $self->_parse_challenge(\$challenge, "server", $self->{'server_params'})
245 4 7 if ($self->{'state'} == 1)
248 0 4 unless $sparams{'rspauth'}
250 0 4 unless $self->{'rspauth'} eq $sparams{'rspauth'}
258 0 7 if (my(@missing) = grep({not exists $sparams{$_};} @server_required))
271 0 7 unless $self->_client_layer(\%sparams, \%response)
278 7 0 unless (defined $realm)
282 7 0 if (defined $realm)
287 2 5 if (defined $authzid)
292 0 7 if (defined $serv_name)
297 0 7 unless defined $user
302 0 7 unless defined $password
325 0 12 if (defined $params->{'realm'} and ref $params->{'realm'} eq "ARRAY")
330 0 12 unless defined $realm
335 4 8 defined $params->{'authzid'} ? :
350 0 12 if (my $cipher = $self->{'cipher'})
351 0 0 unless $cipher->{'fixup'}
370 7 5 if $params->{'qop'} ne "auth"
380 7 5 if $params->{'qop'} ne "auth"
395 1 7 unless ($self->_parse_challenge(\$challenge, "client", $self->{'client_params'}))
401 0 7 if (my(@missing) = grep({not exists $cparams{$_};} @client_required))
407 0 7 unless ($count == ++$self->{'nonce_counts'}{$cparams{'nonce'}})
413 1 6 unless ($self->is_qop_supported($qop))
419 0 6 unless ($username)
425 0 6 if (exists $cparams{'authzid'} and $cparams{'authzid'} eq "")
436 1 5 if ($cservice ne $self->service or $chost ne $self->host)
442 0 5 unless (defined $self->callback("getsecret"))
451 0 5 unless defined $password
455 0 5 unless $self->_server_layer($qop)
462 2 3 unless $expected eq $self->{'client_params'}{'response'}
495 18 113 $is_array ? :
519 65 52 if ($v =~ /^"(.*)"$/s)
522 7 110 if (exists $multi{$type}{$k}) { }
1 109 elsif (defined $params->{$k}) { }
533 0 18 length $$challenge_ref ? :
539 65 66 $is_client ? :
541 0 131 if (not defined $v) { }
73 58 elsif (exists $qdval->{$k}) { }
558 0 5 if $maxssf < 0
560 0 5 if $minssf < 0
562 0 5 if $maxssf < $minssf
565 0 5 if ($auth eq "auth-conf" and $self->_select_cipher($minssf, $maxssf, $ciphers))
570 3 2 if ($auth eq "auth-int")
574 2 0 if ($auth eq "auth")
589 7 6 if /^auth$/
590 4 9 if /^auth-int$/
591 0 13 if /^auth-conf$/
597 0 7 if $maxssf < 0
599 0 7 if $minssf < 0
601 0 7 if $maxssf < $minssf
607 7 0 if $minssf < 1
608 7 0 if $minssf <= 1 and $maxssf >= 1
609 7 0 if $maxssf > 1
617 0 7 if ($cmask & 4 and $self->_select_cipher($minssf, $maxssf, \@sciphers))
623 4 3 if ($cmask & 2)
628 3 0 if ($cmask & 1)
644 0 0 grep({$c->{'name'} eq $_;} @$ciphers) && $c->{'ssf'} >= $minssf && $c->{'ssf'} <= $maxssf ? :
649 0 0 unless eval "require $_->{'pkg'}"
665 0 0 unless $self->{'khc'}
670 0 0 if ($bs > 1)
686 0 0 if $len <= 16
692 0 0 if ($self->{'khs'})
696 0 0 unless $buf
701 0 0 if ($self->{'khs'} and $self->{'cipher'}{'bs'} > 1)
709 0 0 if $mac ne $check
710 0 0 if unpack("N", $seqnum) != $self->{'rcvseqnum'}
720 0 0 if ($bs <= 1)
722 0 0 $d ? :
728 0 0 $d ? :
734 0 0 $d ? :
735 0 0 $d ? :