| lib/SMB/Auth.pm | |||
|---|---|---|---|
| Criterion | Covered | Total | % |
| condition | 45 | 93 | 48.3 |
| line | !l | l&&!r | l&&r | condition |
|---|---|---|---|---|
| 188 | 0 | 0 | 0 | $username && $username =~ /^\w[\w.+-]*$/ && @hash_bytes |
| 242 | 0 | 0 | 15 | $tag >= 160 and $tag <= 163 |
| 275 | 0 | 0 | 15 | $tag >= 160 and $tag <= 163 |
| 280 | 0 | 0 | 7 | ($id0 = $_) && () |
| 327 | 0 | 0 | 2 | ref $value eq 'ARRAY' and shift @$value == 48 |
| 330 | 0 | 0 | 2 | $$_[0] == 6 and $$_[1] eq '1.3.6.1.4.1.311.2.2.10' |
| 337 | 1 | 0 | 3 | ref $value eq 'ARRAY' && shift @$value == 4 |
| 369 | 0 | 1 | 0 | $parser->uint16 == 8 && $self->server_timestamp($parser->uint64) |
| 402 | 0 | 0 | 1 | ref $value eq 'ARRAY' and shift @$value == 10 |
| line | l | !l | condition |
|---|---|---|---|
| 104 | 0 | 0 | shift() || die('No user passwords to set') |
| 113 | 1 | 0 | shift() // '' |
| 122 | 3 | 0 | shift() // '' |
| 128 | 0 | 0 | shift() || die() |
| 139 | 3 | 0 | shift() || die() |
| 140 | 3 | 0 | shift() // '' |
| 141 | 3 | 0 | shift() // '' |
| 155 | 1 | 0 | shift() || 24 |
| 175 | 0 | 0 | shift() || (return) |
| 186 | 0 | 0 | $hash_str || '' |
| 203 | 1 | 0 | $self->ntlm_response || (return $self->err('No ntlm_response from client')) |
| 209 | 1 | 0 | $self->username // (return $self->err('No username from client')) |
| 210 | 1 | 0 | $self->user_passwords->{$username} // (return $self->err("No user '${username}' on server")) |
| 262 | 4 | 11 | $parsed_context_values[$tag - 160] //= \@contents |
| 271 | 39 | 0 | shift() // die('No asn1 tag') |
| 272 | 39 | 0 | shift() // die('No asn1 tag content') |
| 315 | 6 | 0 | shift() // (return) |
| 514 | 1 | 0 | $options{'username'} || '' |
| 515 | 1 | 0 | $options{'password'} || '' |
| 516 | 1 | 0 | $options{'domain'} || 'MYGROUP' |
| 526 | 0 | 1 | $self->server_timestamp || 0 |
| line | l | !l&&r | !l&&!r | condition |
|---|---|---|---|---|
| 214 | 0 | 1 | 0 | $ntlm_hash ||= create_ntlm_hash $password |
| 242 | 9 | 3 | 15 | $tag == 48 or $tag == 96 |
| 275 | 9 | 3 | 15 | $tag == 48 or $tag == 96 |
| 325 | 1 | 1 | 4 | not defined $self->ntlmssp_supported or $options{'is_initial'} |
| 418 | 1 | 1 | 4 | not defined $self->ntlmssp_supported or $options{'is_initial'} |
| 432 | 2 | 0 | 2 | $options{'host'} || $names[0] |
| 433 | 1 | 0 | 3 | $options{'domain'} || $names[1] |
| 523 | 0 | 1 | 0 | $options{'ntlm_password_hash'} || create_ntlm_hash $password |