line |
true |
false |
branch |
24
|
6 |
7 |
if $opts{'handlers'} |
25
|
7 |
6 |
unless $opts{'handlers'} and ref $opts{'handlers'} eq 'ARRAY' |
26
|
12 |
1 |
unless $opts{'domains'} and ref $opts{'domains'} eq 'ARRAY' |
27
|
10 |
3 |
unless defined $opts{'simple'} and not $opts{'simple'} |
28
|
13 |
0 |
unless defined $opts{'handle_connects'} and not $opts{'handle_connects'} |
29
|
13 |
0 |
unless defined $opts{'hostname'} |
30
|
13 |
0 |
unless $opts{'relay'} |
31
|
12 |
1 |
unless $opts{'origin'} |
32
|
13 |
0 |
unless $opts{'maxrelay'} |
33
|
0 |
13 |
if $opts{'relay_auth'} |
34
|
13 |
0 |
unless $opts{'version'} |
37
|
13 |
0 |
ref $options eq 'HASH' ? : |
69
|
2 |
0 |
if $pause |
79
|
0 |
1 |
unless scalar @{$self->{'_mail_queue'};} |
83
|
1 |
0 |
if $_->{'uid'} eq $uid |
92
|
0 |
3 |
unless $self->_conn_exists($id) |
94
|
1 |
2 |
if ($handle and $^O ne 'MSWin32') { } |
104
|
0 |
12 |
unless $_[0]{'listener'} |
125
|
0 |
409 |
unless $wheel_id and defined $self->{'clients'}{$wheel_id} |
133
|
0 |
70 |
unless grep {$_ eq $cmd;} @{$$self{'cmds'};} |
139
|
0 |
6 |
unless ref $handler and ref $handler eq 'ARRAY' |
143
|
6 |
0 |
if (ref $handler->[$count] and ref $handler->[$count] eq 'HASH') { } |
147
|
0 |
6 |
unless $handler->[$count]{'SESSION'} |
149
|
0 |
6 |
unless $handler->[$count]{'EVENT'} |
151
|
0 |
6 |
unless $handler->[$count]{'MATCH'} |
153
|
0 |
6 |
if UNIVERSAL::isa($handler->[$count]{'SESSION'}, 'POE::Session') |
156
|
0 |
6 |
if ($@) { } |
179
|
0 |
13 |
if ($self->{'alias'}) { } |
185
|
13 |
0 |
if ($kernel != $sender) |
204
|
13 |
0 |
unless $self->{'resolver'} and $self->{'resolver'}->isa('POE::Component::Client::DNS') |
209
|
1 |
12 |
if $self->{'dnsbl_enable'} |
222
|
0 |
13 |
if ($self->{'listener'}) |
228
|
13 |
0 |
defined $self->{'address'} ? : |
|
13 |
0 |
defined $self->{'port'} ? : |
253
|
0 |
12 |
unless $wheel |
281
|
0 |
134 |
unless $self->_conn_exists($id) |
283
|
64 |
70 |
if ($self->{'clients'}{$id}{'buffer'}) |
284
|
5 |
59 |
if ($input eq '.' and $self->{'simple'}) { } |
|
2 |
57 |
elsif ($input eq '.' and ref $self->{'clients'}{$id}{'buffer'} eq 'ARRAY') { } |
|
1 |
56 |
elsif ($input eq '.') { } |
301
|
50 |
6 |
if (ref $self->{'clients'}{$id}{'buffer'} eq 'ARRAY') { } |
314
|
0 |
70 |
unless $cmd |
315
|
0 |
70 |
unless ($self->_valid_cmd($cmd)) |
320
|
8 |
62 |
if ($cmd eq 'quit') |
331
|
0 |
0 |
unless $self->_conn_exists($id) |
339
|
0 |
90 |
unless $self->_conn_exists($id) |
340
|
82 |
8 |
unless $self->{'clients'}{$id}{'quit'} |
348
|
0 |
1 |
unless $self->_conn_exists($id) |
361
|
13 |
0 |
unless $self->{'alias'} |
364
|
1 |
12 |
if $self->{'dnsbl_enable'} |
371
|
0 |
1 |
unless $self->_conn_exists($id) |
385
|
0 |
1 |
unless $self->{'buffers'}{$wheel_id}{'shutdown'} |
401
|
0 |
0 |
unless (@events) |
409
|
0 |
0 |
unless /^_/ |
412
|
0 |
0 |
unless ($self->{'sessions'}{$sender_id}{'refcnt'}++ or $session == $sender) |
425
|
0 |
0 |
unless (@events) |
439
|
0 |
0 |
unless /^_/ |
441
|
0 |
0 |
unless ($blah) |
445
|
0 |
0 |
if (--$self->{'sessions'}{$sender_id}{'refcnt'} <= 0) |
447
|
0 |
0 |
unless ($session == $sender) |
459
|
13 |
0 |
if (--$self->{'sessions'}{$session_id}{'refcnt'} <= 0) |
461
|
13 |
0 |
unless $session_id eq $smtpd_id |
492
|
55 |
42 |
if $self->_pluggable_process('SMTPD', $event, \(@args), \@extra_args) == 4 |
494
|
0 |
42 |
if scalar @extra_args |
509
|
0 |
90 |
unless $self->_conn_exists($id) |
510
|
0 |
90 |
unless $output |
512
|
0 |
90 |
if $self->_pluggable_process('SMTPC', 'response', $id, \$output) == 4 |
514
|
0 |
90 |
unless $self->_conn_exists($id) and defined $self->{'clients'}{$id}{'wheel'} |
523
|
5 |
0 |
if $recipient =~ /$handler->{'RE'}/ |
530
|
2 |
6 |
if $self->{'paused'} |
531
|
0 |
6 |
if $self->{'_smtp_clients'} and $self->{'_smtp_clients'} >= $self->{'maxrelay'} |
534
|
1 |
5 |
unless $item |
537
|
0 |
5 |
if ($self->{'relay'}) |
543
|
5 |
0 |
if (my $handler = $self->_check_recipient($recipient)) |
559
|
0 |
0 |
if $response |
567
|
0 |
0 |
unless ($response->{'response'}) |
568
|
0 |
0 |
if (time - $item->{'ts'} > 345600) |
578
|
0 |
0 |
unless scalar @mx |
609
|
0 |
0 |
if ($self->{'relay_user'} and $self->{'relay_pass'}) |
623
|
0 |
0 |
scalar keys %auth ? : |
642
|
0 |
0 |
if ($error->{'SMTP_Server_Error'} and $error->{'SMTP_Server_Error'} =~ /^5/) |
645
|
0 |
0 |
if (time - $item->{'ts'} > 345600) |
657
|
0 |
12 |
unless $self->{'handle_connects'} |
658
|
1 |
11 |
if ($self->{'dnsbl_enable'}) { } |
672
|
0 |
1 |
if ($data->{'error'}) { } |
677
|
0 |
1 |
if $data->{'response'} ne 'NXDOMAIN' |
686
|
0 |
0 |
if ($data->{'error'} and $data->{'error'} eq 'NOERROR') |
688
|
0 |
0 |
if scalar @answers |
698
|
3 |
1 |
unless $self->{'simple'} |
706
|
0 |
0 |
unless $self->{'simple'} |
714
|
3 |
8 |
unless $self->{'simple'} |
718
|
0 |
8 |
if ($self->{'dnsbl_enable'} and !$self->{'clients'}{$id}{'dnsbl'} || $self->{'clients'}{$id}{'dnsbl'} ne 'NXDOMAIN') { } |
|
0 |
8 |
elsif ($self->{'clients'}{$id}{'mail'}) { } |
|
8 |
0 |
elsif (my($from) = $args =~ /^from:\s*<(.+)>/i) { } |
725
|
8 |
0 |
if (my $host = 'Email::Address'->new(undef, $from, undef)->host) { } |
728
|
0 |
8 |
if ($self->{'sender_verify'}) |
735
|
0 |
0 |
if $response |
743
|
0 |
0 |
unless $args |
752
|
3 |
12 |
unless $self->{'simple'} |
756
|
2 |
10 |
if (not $self->{'clients'}{$id}{'mail'}) { } |
|
0 |
10 |
elsif ($self->{'sender_verify'} and defined $self->{'clients'}{$id}{'fverify'}) { } |
|
10 |
0 |
elsif (my($to) = $args =~ /^to:\s*<(.+)>/i) { } |
761
|
0 |
0 |
if ($fverify eq 'NXDOMAIN') { } |
775
|
9 |
1 |
if ($self->_recipient_domain($to)) { } |
784
|
0 |
0 |
unless $args |
793
|
7 |
3 |
unless scalar @{$self->{'domains'};} |
796
|
0 |
3 |
unless $hostpart |
797
|
2 |
1 |
if grep {uc $_ eq uc $hostpart;} @{$$self{'domains'};} |
803
|
3 |
5 |
unless $self->{'simple'} |
806
|
0 |
5 |
if (not $self->{'clients'}{$id}{'mail'}) { } |
|
0 |
5 |
elsif (not $self->{'clients'}{$id}{'rcpt'}) { } |
|
0 |
5 |
elsif ($self->{'sender_verify'} and defined $self->{'clients'}{$id}{'fverify'}) { } |
814
|
0 |
0 |
if ($fverify eq 'NXDOMAIN') { } |
836
|
0 |
8 |
unless $self->{'simple'} |
844
|
0 |
7 |
unless $self->{'simple'} |
852
|
0 |
7 |
unless $self->{'simple'} |
860
|
0 |
2 |
unless $self->{'simple'} |
869
|
0 |
5 |
unless $self->{'simple'} |
871
|
0 |
5 |
if ($self->{'sender_verify'} and defined $self->{'clients'}{$id}{'fverify'}) |
874
|
0 |
0 |
if ($fverify eq 'NXDOMAIN') { } |
893
|
3 |
2 |
unless grep {/^Message-ID:/i;} @{$buf;} |
895
|
4 |
1 |
unless $self->{'origin'} |
898
|
1 |
4 |
if $self->{'origin'} |
910
|
1 |
0 |
if (ref $_[0] and ref $_[0] eq 'HASH') { } |
|
0 |
0 |
elsif (ref $_[0] and ref $_[0] eq 'ARRAY') { } |
920
|
0 |
1 |
unless $item{'from'} |
921
|
0 |
1 |
unless $item{'msg'} |
922
|
0 |
1 |
unless $item{'rcpt'} and ref $item{'rcpt'} eq 'ARRAY' and scalar @{$item{'rcpt'};} |
923
|
1 |
0 |
unless $item{'ts'} and $item{'ts'} =~ /^\d+$/ |
924
|
1 |
0 |
unless $item{'uid'} |
925
|
1 |
0 |
unless $item{'subject'} |