Condition Coverage

blib/lib/Authen/Radius.pm
Criterion Covered Total %
condition 30 130 23.0


and 2 conditions

line l !l condition
274 0 0 defined $self->{'sock_list'} and scalar @{$self->{'sock_list'};}

and 3 conditions

line !l l&&!r l&&r condition
166 3 1 1 $self->{'node_list_a'} and not exists $self->{'node_list_a'}{$ip . ':' . $port}
206 0 0 0 $self->{'message_auth'} and $type == 1
238 0 0 0 not $retransmit and defined $self->{'sock'}
317 0 0 0 $detect_bad_id and defined $id
0 0 0 $detect_bad_id and defined $id and $id != $request_id
368 0 0 0 defined $rcv && $rcv == 2
385 0 3 0 defined $value and defined $dict_val{$name}{$value}
395 1 0 0 $id == 2 and $vendor eq 'not defined'
460 0 0 1 defined $prefix_len and $prefix_len < 128
626 2 0 0 $id == 2 and $vendor eq 'not defined'
1047 0 0 0 $vendor and $vendor eq '-' || $vendor =~ /^\[/
1060 1413 27 33 $extra and not $extra =~ /^#/
1105 0 0 18 exists $dict_name{$name} and $dict_name{$name}{'type'} eq 'tlv'

or 2 conditions

line l !l condition
360 0 0 $nas || '127.0.0.1'
577 0 0 $dict_id{$vendor}{$id} // {}
904 0 0 $a->{'Tag'} //= 0
1020 0 42 $opt{'format'} // ''
1021 0 42 $opt{'format'} // ''
1026 42 0 $file ||= '/etc/raddb/dictionary'
1057 1134 0 $dict_def_vendor // 'not defined'

or 3 conditions

line l !l&&r !l&&!r condition
108 6 1 0 $h{'Host'} or $h{'NodeList'}
114 7 0 0 $serv_port || exists $SERVICES{$service}
130 8 0 0 $n_port ||= $serv_port
150 2 4 0 $port ||= $serv_port
199 0 0 0 $type == 4 or $type == 40
0 0 0 $type == 4 or $type == 40 or $type == 43
206 0 0 0 $self->{'message_auth'} and $type == 1 or $type == 12
236 0 0 0 $self->{'sock'}->send($data) || $self->set_error('ESENDFAIL', $!)
240 0 0 0 $self->{'sock'}->send($data) || $self->set_error('ESENDFAIL', $!)
257 0 0 0 $new_sock->send($data) || $self->set_error('ESENDFAIL', $!)
261 0 0 0 $res ||= $res
294 0 0 0 defined $from_addr_n || defined $self->{'sock_list'}
571 0 0 0 $dict_vendor_id{$vendor_id}{'name'} // $vendor_id
579 0 0 0 $r->{'name'} // $id
604 1 1 0 $dict_vendor_name{$attr->{'Vendor'}}{'id'} // int $attr->{'Vendor'}
793 0 2 0 $sattr->{'Type'} // $dict_name{$sattr_name}{'type'}
794 2 0 0 $dict_name{$sattr_name}{'id'} // int $sattr_name
871 0 0 0 $dict_name{$attr_name}{'id'} // int $attr_name
899 0 0 0 $dict_name{$a->{'Name'}}{'id'} // int $a->{'Name'}
900 0 0 0 $a->{'Type'} // $dict_name{$a->{'Name'}}{'type'}
902 0 0 0 defined $a->{'Tag'} || $dict_name{$a->{'Name'}}{'has_tag'}
905 0 0 0 $a->{'Tag'} < 1 or $a->{'Tag'} > 31
1036 654 906 6546 $line =~ /^\s*$/ or $line =~ /^#/
1047 0 0 0 $vendor eq '-' || $vendor =~ /^\[/
1057 339 1134 0 $vendor ||= $dict_def_vendor // 'not defined'