Branch Coverage

lib/SMB/Server.pm
Criterion Covered Total %
branch 0 138 0.0


line true false branch
40 0 0 unless $port or $fifo_filename
43 0 0 $fifo_filename ? :
47 0 0 $fifo_filename ? :
48 0 0 unless $main_socket
60 0 0 if (not $share_roots and $FindBin::Bin)
62 0 0 if -d $_ and -x _
0 0 if -d $shares_dir
65 0 0 do { ref $share_roots ne 'HASH' } ? :
0 0 do { $share_roots eq '-' if ref $share_roots eq '' } ? :
0 0 $share_roots ? :
68 0 0 if ref $share_roots eq ''
91 0 0 unless $auth->load_user_passwords($self->passwd_filename)
115 0 0 $tid ? :
116 0 0 if $tree
118 0 0 if ($command->is_smb1)
119 0 0 if ($command->is('Negotiate'))
120 0 0 if ($command->supports_smb_dialect(514)) { }
129 0 0 if ($command->is_smb2)
134 0 0 if ($tid || exists $command->{'fid'} and not $tree) { }
0 0 elsif ($command->is('Ioctl') and $command->function == 393620) { }
0 0 elsif ($command->is('Ioctl') and $command->function == 1114136) { }
0 0 elsif ($fid) { }
144 0 0 if ($command->header->is_chained) { }
145 0 0 if $connection->chain_fid and $command->is_fid_unset($fid)
149 0 0 unless $openfile = $connection->{'openfiles'}{join $;, $fid->[0], $fid->[1]}
154 0 0 if ($error) { }
0 0 elsif ($command->is('Negotiate')) { }
0 0 elsif ($command->is('SessionSetup')) { }
0 0 elsif ($command->is('TreeConnect')) { }
0 0 elsif ($command->is('Create')) { }
0 0 elsif ($command->is('Close')) { }
0 0 elsif ($command->is('QueryInfo')) { }
0 0 elsif ($command->is('SetInfo')) { }
0 0 elsif ($command->is('Read')) { }
0 0 elsif ($command->is('Write')) { }
0 0 elsif ($command->is('Ioctl')) { }
0 0 elsif ($command->is('QueryDirectory')) { }
0 0 elsif ($command->is('ChangeNotify')) { }
0 0 elsif ($command->is('Cancel')) { }
165 0 0 if not $command->security_buffer or defined $auth_completed and not $auth_completed
172 0 0 if ($tree_root or $share eq 'IPC$') { }
189 0 0 if ($file->exists and $disposition == 1)
190 0 0 if ($command->requested_directory and not $file->is_directory) { }
0 0 elsif ($command->requested_non_directory and $file->is_directory) { }
196 0 0 unless ($error)
198 0 0 if ($openfile) { }
199 0 0 if $file->is_svc
202 0 0 if $command->has_next_in_chain
206 0 0 if $command->requested_delete_on_close
213 0 0 if ($openfile->delete_on_close)
216 0 0 unless $openfile->file->remove
227 0 0 if ($rename_info)
233 0 0 if $error
236 0 0 if $command->requested_delete_on_close
239 0 0 if ($openfile->{'dcerpc'}) { }
250 0 0 unless defined $command->{'buffer'}
254 0 0 if ($openfile->{'dcerpc'}) { }
262 0 0 if ($openfile->{'dcerpc'}) { }
264 0 0 unless ($error)
266 0 0 unless $error
274 0 0 $command->is_index_specified ? :
0 0 $command->is_reopen ? :
282 0 0 unless defined $command->{'files'}
293 0 0 if $error
309 0 0 if ($socket == $self->main_socket) { }
319 0 0 unless ($connection)
326 0 0 unless my $connection = $self->get_connection($socket)
328 0 0 $socket->eof ? :
331 0 0 unless (@commands)