Branch Coverage

blib/lib/Authen/SASL/Perl/DIGEST_MD5.pm
Criterion Covered Total %
branch 82 152 53.9


line true false branch
161 0 8 if (not ref $options or ref $options ne "HASH")
171 7 1 unless $options->{'no_integrity'}
174 0 7 unless $options->{'no_integrity'} or $options->{'no_confidentiality'} or $NO_CRYPT_AVAILABLE
210 5 4 $Authen::SASL::Perl::DIGEST_MD5::NONCE ? :
248 0 11 unless $self->_parse_challenge(\$challenge, "server", $self->{'server_params'})
250 4 7 if ($self->{'state'} == 1)
253 0 4 unless $sparams{'rspauth'}
255 0 4 unless $self->{'rspauth'} eq $sparams{'rspauth'}
263 0 7 if (my(@missing) = grep({not exists $sparams{$_};} @server_required))
273 3 4 $Authen::SASL::Perl::DIGEST_MD5::CNONCE ? :
276 0 7 unless $self->_client_layer(\%sparams, \%response)
283 7 0 unless (defined $realm)
287 7 0 if (defined $realm)
292 2 5 if (defined $authzid)
297 0 7 if (defined $serv_name)
302 0 7 unless defined $user
307 0 7 unless defined $password
330 0 12 if (defined $params->{'realm'} and ref $params->{'realm'} eq "ARRAY")
335 0 12 unless defined $realm
340 4 8 defined $params->{'authzid'} ? :
355 0 12 if (my $cipher = $self->{'cipher'})
356 0 0 unless $cipher->{'fixup'}
375 7 5 if $params->{'qop'} ne "auth"
385 7 5 if $params->{'qop'} ne "auth"
400 1 7 unless ($self->_parse_challenge(\$challenge, "client", $self->{'client_params'}))
406 0 7 if (my(@missing) = grep({not exists $cparams{$_};} @client_required))
412 0 7 unless ($count == ++$self->{'nonce_counts'}{$cparams{'nonce'}})
418 1 6 unless ($self->is_qop_supported($qop))
424 0 6 unless ($username)
430 0 6 if (exists $cparams{'authzid'} and $cparams{'authzid'} eq "")
441 1 5 if ($cservice ne $self->service or $chost ne $self->host)
447 0 5 unless (defined $self->callback("getsecret"))
456 0 5 unless defined $password
460 0 5 unless $self->_server_layer($qop)
467 2 3 unless $expected eq $self->{'client_params'}{'response'}
500 18 113 $is_array ? :
524 65 52 if ($v =~ /^"(.*)"$/s)
527 7 110 if (exists $multi{$type}{$k}) { }
1 109 elsif (defined $params->{$k}) { }
538 0 18 length $$challenge_ref ? :
544 65 66 $is_client ? :
546 0 131 if (not defined $v) { }
73 58 elsif (exists $qdval->{$k}) { }
563 0 5 if $maxssf < 0
565 0 5 if $minssf < 0
567 0 5 if $maxssf < $minssf
570 0 5 if ($auth eq "auth-conf" and $self->_select_cipher($minssf, $maxssf, $ciphers))
575 3 2 if ($auth eq "auth-int")
579 2 0 if ($auth eq "auth")
594 7 6 if /^auth$/
595 4 9 if /^auth-int$/
596 0 13 if /^auth-conf$/
602 0 7 if $maxssf < 0
604 0 7 if $minssf < 0
606 0 7 if $maxssf < $minssf
612 7 0 if $minssf < 1
613 7 0 if $minssf <= 1 and $maxssf >= 1
614 7 0 if $maxssf > 1
622 0 7 if ($cmask & 4 and $self->_select_cipher($minssf, $maxssf, \@sciphers))
628 4 3 if ($cmask & 2)
633 3 0 if ($cmask & 1)
649 0 0 grep({$c->{'name'} eq $_;} @$ciphers) && $c->{'ssf'} >= $minssf && $c->{'ssf'} <= $maxssf ? :
654 0 0 unless eval "require $_->{'pkg'}"
670 0 0 unless $self->{'khc'}
675 0 0 if ($bs > 1)
691 0 0 if $len <= 16
697 0 0 if ($self->{'khs'})
701 0 0 unless $buf
706 0 0 if ($self->{'khs'} and $self->{'cipher'}{'bs'} > 1)
714 0 0 if $mac ne $check
715 0 0 if unpack("N", $seqnum) != $self->{'rcvseqnum'}
725 0 0 if ($bs <= 1)
727 0 0 $d ? :
733 0 0 $d ? :
739 0 0 $d ? :
740 0 0 $d ? :