line |
true |
false |
branch |
89
|
0 |
0 |
if (defined $ENV{'CLACKS_SIMULATED_TIME_OFFSET'}) |
107
|
0 |
0 |
unless (defined $self->{'initHasRun'} and $self->{'initHasRun'}) |
125
|
0 |
0 |
if ($self->{'persistance'}) |
133
|
0 |
0 |
if ($self->{'shutdowntime'} and $self->{'shutdowntime'} < &Net::Clacks::Server::time()) |
139
|
0 |
0 |
if ($self->{'savecache'} and $now > $self->{'lastsavecache'} + $self->{'persistanceinterval'}) |
146
|
0 |
0 |
if (defined $self->{'config'}{'master'}{'socket'} or defined $self->{'config'}{'master'}{'ip'}) |
154
|
0 |
0 |
unless (scalar keys %{$$self{"clients"};}) |
168
|
0 |
0 |
if ($buf eq "\r") { } |
|
0 |
0 |
elsif ($buf eq "\n") { } |
171
|
0 |
0 |
if $self->{'clients'}{$cid}{'buffer'} eq "" |
184
|
0 |
0 |
if ($self->{'interclackslock'} and not $self->{'clients'}{$cid}{'interclacksclient'}) |
192
|
0 |
0 |
if $self->{'clients'}{$cid}{'inmessages'}[0]{'releasetime'} > $now |
197
|
0 |
0 |
if ($inmsg =~ /^CLACKS\ (.+)/u) |
211
|
0 |
0 |
unless ($self->{'clients'}{$cid}{'authok'}) |
215
|
0 |
0 |
unless ($self->{'nodebug'}) |
226
|
0 |
0 |
if ($self->{'discardafterlogging'}) |
232
|
0 |
0 |
if ($inmsg =~ /^OVERHEAD\ /u) { } |
|
0 |
0 |
elsif ($self->_handleMessageDirect($cid, $inmsg)) { } |
|
0 |
0 |
elsif ($self->_handleMessageCaching($cid, $inmsg)) { } |
|
0 |
0 |
elsif ($self->_handleMessageControl($cid, $inmsg)) { } |
249
|
0 |
0 |
if ($self->{'sendinterclacks'}) |
251
|
0 |
0 |
if ($cid eq $interclackscid or not $self->{'clients'}{$interclackscid}{'interclacks'}) |
263
|
0 |
0 |
if ($self->{'nextcachecleanup'} < $now) |
272
|
0 |
0 |
if ($self->{'workCount'}) { } |
|
0 |
0 |
elsif ($self->{'usleep'} < $self->{'config'}{'throttle'}{'maxsleep'}) { } |
277
|
0 |
0 |
if ($self->{'usleep'}) |
301
|
0 |
0 |
unless ($self->{'persistance'}) |
309
|
0 |
0 |
if ($self->{'savecache'} == 1) |
318
|
0 |
0 |
if ($self->{'savecache'} == 2) |
327
|
0 |
0 |
unless defined $val |
331
|
0 |
0 |
unless defined $val |
338
|
0 |
0 |
unless length $buffer |
346
|
0 |
0 |
if ($Net::Clacks::Server::EVAL_ERROR or not $ok) |
364
|
0 |
0 |
unless open my $fh, "<", $fname |
377
|
0 |
0 |
unless open my $fh, ">", $fname |
390
|
0 |
0 |
if (-f $self->{'config'}{'persistancefile'}) |
395
|
0 |
0 |
if (not $loadok and -f $previousfname) |
398
|
0 |
0 |
if ($loadok) |
402
|
0 |
0 |
if (not $loadok and -f $tempfname) |
405
|
0 |
0 |
if ($loadok) |
410
|
0 |
0 |
if (not $loadok) { } |
421
|
0 |
0 |
if (defined $self->{'initHasRun'} and $self->{'initHasRun'}) |
427
|
0 |
0 |
if (defined $ENV{'PC_CONFIG_PATHS'}) { } |
438
|
0 |
0 |
if ($path ne "" and not $path =~ m[/$]u) |
442
|
0 |
0 |
unless -f $fullfname |
448
|
0 |
0 |
unless $varname =~ /^PC\_/u |
457
|
0 |
0 |
if (not defined $filedata or $filedata eq "") |
467
|
0 |
0 |
if (defined $config->{'hosts'}{$hname}) |
475
|
0 |
0 |
unless (defined $self->{'config'}{'throttle'}{'maxsleep'}) |
478
|
0 |
0 |
unless (defined $self->{'config'}{'throttle'}{'step'}) |
484
|
0 |
0 |
unless (defined $self->{'config'}{'ssl'} and defined $self->{'config'}{'ssl'}{'cert'} and defined $self->{'config'}{'ssl'}{'key'}) |
489
|
0 |
0 |
unless (-f $self->{'config'}{'ssl'}{'cert'}) |
492
|
0 |
0 |
unless (-f $self->{'config'}{'ssl'}{'key'}) |
496
|
0 |
0 |
unless (defined $self->{'config'}{'username'}) |
499
|
0 |
0 |
unless (defined $self->{'config'}{'password'}) |
504
|
0 |
0 |
if (defined $self->{'config'}{'persistancefile'}) { } |
510
|
0 |
0 |
if (not defined $self->{'config'}{'persistanceinterval'}) { } |
516
|
0 |
0 |
unless (defined $self->{'config'}{'interclacksreconnecttimeout'}) |
520
|
0 |
0 |
unless (defined $self->{'config'}{'authtimeout'}) |
524
|
0 |
0 |
unless (defined $self->{'config'}{'deletedcachetime'}) |
527
|
0 |
0 |
unless (defined $self->{'config'}{'stalecachetime'}) |
531
|
0 |
0 |
unless (defined $self->{'config'}{'cachecleaninterval'}) |
551
|
0 |
0 |
if (defined $config->{'ip'}) |
552
|
0 |
0 |
unless (defined $config->{'port'}) |
559
|
0 |
0 |
unless my $tcp = "IO::Socket::IP"->new("LocalHost", $ip, "LocalPort", $config->{'port'}, "Listen", 1, "Blocking", 0, "ReuseAddr", 1, "Proto", "tcp") |
570
|
0 |
0 |
if (defined $config->{'socket'} or defined $self->{'config'}{'master'}{'socket'}) |
576
|
0 |
0 |
unless ($udsloaded) |
599
|
0 |
0 |
if (defined $config->{'socket'}) |
601
|
0 |
0 |
if (-S $socket) |
605
|
0 |
0 |
unless my $tcp = "IO::Socket::UNIX"->new("Type", 1, "Local", $socket, "Listen", 1) |
616
|
0 |
0 |
if (defined $config->{'socketchmod'} and $config->{'socketchmod'} ne "") |
637
|
0 |
0 |
unless (-f $fname) |
644
|
0 |
0 |
if (length $data < 11) |
649
|
0 |
0 |
if (substr($data, 0, 9) ne "\0CLACKSV3") |
650
|
0 |
0 |
if ($alreadyupgraded) |
656
|
0 |
0 |
unless ($self->_inplaceUpgrade($fname)) |
664
|
0 |
0 |
if (length $data < 18) |
671
|
0 |
0 |
if (substr($data, -9, 9) ne "\0CLACKSV3") |
679
|
0 |
0 |
if (length $data) |
685
|
0 |
0 |
unless ($loadok) |
704
|
0 |
0 |
if (open my $ifh, '<', $fname) { } |
716
|
0 |
0 |
if (not defined $endline and $accesstimeline eq 'ENDBYTES') { } |
724
|
0 |
0 |
if (not defined $line && defined $timestampline or $endline ne "ENDBYTES") |
731
|
0 |
0 |
if ($line ne "") |
737
|
0 |
0 |
unless ($loadok) |
749
|
0 |
0 |
if ($timestampline ne "") |
756
|
0 |
0 |
if (not $loadok) { } |
767
|
0 |
0 |
if ($needupgrade) { } |
|
0 |
0 |
elsif ($accesstimeline ne '') { } |
779
|
0 |
0 |
if (not $loadok) { } |
797
|
0 |
0 |
if (defined $clackscachetime{$key}) |
800
|
0 |
0 |
if (defined $clackscacheaccesstime{$key}) |
813
|
0 |
0 |
if (defined $cache{$key}) |
820
|
0 |
0 |
if (defined $clackscacheaccesstime{$key}) |
843
|
0 |
0 |
if (defined $self->{'config'}{'master'}{'socket'}) { } |
848
|
0 |
0 |
if (not defined $self->{'clients'}{$mcid} and $self->{'nextinterclackscheck'} < $now) |
854
|
0 |
0 |
if (defined $self->{'config'}{'master'}{'socket'}) { } |
867
|
0 |
0 |
if (not defined $msocket) { } |
872
|
0 |
0 |
if (ref $msocket ne "IO::Socket::UNIX") |
878
|
0 |
0 |
unless ($encrypted) |
912
|
0 |
0 |
if (defined $self->{'config'}{'master'}{'ip'}) |
930
|
0 |
0 |
if (defined $clientsocket) |
933
|
0 |
0 |
if (ref $tcpsocket eq 'IO::Socket::UNIX') { } |
942
|
0 |
0 |
if ($self->{'clients'}{$debugcid}{'mirror'}) |
947
|
0 |
0 |
if (ref $clientsocket ne "IO::Socket::UNIX") |
968
|
0 |
0 |
unless ($encrypted) |
1024
|
0 |
0 |
unless ($self->{'clients'}{$cid}{'socket'}->connected) |
1028
|
0 |
0 |
if (not $self->{'clients'}{$cid}{'interclacks'}) { } |
1029
|
0 |
0 |
if ($self->{'clients'}{$cid}{'lastping'} > 0 and $self->{'clients'}{$cid}{'lastping'} < $pingtime) |
1035
|
0 |
0 |
if ($self->{'clients'}{$cid}{'lastping'} < $interclackspingtime) |
1042
|
0 |
0 |
if ($self->{'clients'}{$cid}{'interclacks'} and $self->{'clients'}{$cid}{'lastinterclacksping'} < $interclackspinginterval) |
1047
|
0 |
0 |
if (not $self->{'clients'}{$cid}{'authok'} and $self->{'clients'}{$cid}{'authtimeout'} < $now) |
1054
|
0 |
0 |
if (scalar @{$self->{'toremove'};}) |
1061
|
0 |
0 |
if contains($cid, \@flushed) |
1063
|
0 |
0 |
unless length $self->{'clients'}{$cid}{'outbuffer'} |
1073
|
0 |
0 |
if (defined $self->{'clients'}{$cid}) |
1076
|
0 |
0 |
if ($self->{'clients'}{$debugcid}{'mirror'}) |
1078
|
0 |
0 |
if ($self->{'clients'}{$cid}{'interclacksclient'} and $self->{'interclackslock'}) |
1084
|
0 |
0 |
if ($self->{'clients'}{$cid}{'interclacksclient'} and $self->{'interclackslock'}) |
1105
|
0 |
0 |
if (length $self->{'clients'}{$cid}{'buffer'} > 0) |
1112
|
0 |
0 |
if ($hasoutbufferwork) |
1129
|
0 |
0 |
unless ($readok) |
1133
|
0 |
0 |
if (defined $rawbuffer and length $rawbuffer) |
1137
|
0 |
0 |
unless ($readchunksleft) |
1148
|
0 |
0 |
if ($totalread) { } |
1153
|
0 |
0 |
if ($self->{'clients'}{$cid}{'failcount'} > 5) |
1170
|
0 |
0 |
if ($forceclientid ne "" and $forceclientid ne $cid) |
1173
|
0 |
0 |
if ($cid ne $forceclientid and contains($cid, $self->{'toremove'})) |
1176
|
0 |
0 |
if (length $self->{'clients'}{$cid}{'outbuffer'}) { } |
|
0 |
0 |
elsif ($self->{'clients'}{$cid}{'lastmessage'} + 60 < $now) { } |
1184
|
0 |
0 |
unless length $self->{'clients'}{$cid}{'outbuffer'} |
1192
|
0 |
0 |
if ($Net::Clacks::Server::EVAL_ERROR) |
1197
|
0 |
0 |
if (not $self->{'clients'}{$cid}{'socket'}->opened or $self->{'clients'}{$cid}{'socket'}->error or $Net::Clacks::Server::ERRNO ne "" and not $Net::Clacks::Server::ERRNO{'EWOULDBLOCK'}) |
1203
|
0 |
0 |
if (defined $written and $written) |
1204
|
0 |
0 |
if (length $self->{'clients'}{$cid}{'outbuffer'} == $written) { } |
1222
|
0 |
0 |
if ($self->{'cache'}{$ckey}{'deleted'} and $self->{'cache'}{$ckey}{'cachetime'} < $deletedtime) |
1238
|
0 |
0 |
if (not $self->{'cache'}{$ckey}{'deleted'} and $self->{'cache'}{$ckey}{'accesstime'} < $staletime) |
1264
|
0 |
0 |
if ($line->{'type'} eq "DEBUG" and $self->{'clients'}{$cid}{'mirror'}) |
1268
|
0 |
0 |
if ($cid eq $line->{'sender'}) |
1272
|
0 |
0 |
if ($line->{'type'} ne "DEBUG" and defined $self->{'clients'}{$cid}{'listening'}{$line->{'name'}}) |
1274
|
0 |
0 |
if ($line->{'type'} eq 'NOTIFY') { } |
|
0 |
0 |
elsif ($line->{'type'} eq 'SET') { } |
|
0 |
0 |
elsif ($line->{'type'} eq 'SETANDSTORE') { } |
1281
|
0 |
0 |
if ($self->{'clients'}{$cid}{'interclacks'}) { } |
1295
|
0 |
0 |
if $self->{'clients'}{$cid}{'outmessages'}[0]{'releasetime'} > $now |
1298
|
0 |
0 |
if ($outmsg->{'message'} eq 'EXIT') { } |
1312
|
0 |
0 |
if ($inmsg =~ /^OVERHEAD\ (.+?)\ (.+)/u) |
1319
|
0 |
0 |
if (contains($key, \@flagparts)) { } |
1328
|
0 |
0 |
if ($parsedflags{'auth_token'}) |
1329
|
0 |
0 |
if ($value eq $self->{'authtoken'}) { } |
1345
|
0 |
0 |
unless ($self->{'clients'}{$cid}{'authok'}) |
1349
|
0 |
0 |
if ($parsedflags{'timestamp'}) |
1356
|
0 |
0 |
if ($parsedflags{'lock_for_sync'} and $self->{'clients'}{$cid}{'interclacksclient'}) |
1357
|
0 |
0 |
if ($value) { } |
1370
|
0 |
0 |
unless (defined $self->{'cache'}{$ckey}{'cachetime'} and &looks_like_number($self->{'cache'}{$ckey}{'cachetime'})) |
1373
|
0 |
0 |
unless (defined $self->{'cache'}{$ckey}{'accesstime'} and &looks_like_number($self->{'cache'}{$ckey}{'accesstime'})) |
1376
|
0 |
0 |
unless (defined $self->{'cache'}{$ckey}{'deleted'} and $self->{'cache'}{$ckey}{'deleted'}) |
1379
|
0 |
0 |
unless (defined $self->{'cache'}{$ckey}{'data'}) |
1384
|
0 |
0 |
if (not $self->{'cache'}{$ckey}{'deleted'}) { } |
1395
|
0 |
0 |
if ($parsedflags{'close_all_connections'} and $value) |
1397
|
0 |
0 |
if ($self->{'clients'}{$closecid}{'interclacks'} and $parsedflags{'forward_message'}) |
1406
|
0 |
0 |
if ($parsedflags{'shutdown_service'}) |
1408
|
0 |
0 |
if ($value > 0) |
1413
|
0 |
0 |
if ($parsedflags{'discard_message'}) |
1416
|
0 |
0 |
if ($parsedflags{'no_logging'}) |
1420
|
0 |
0 |
if ($parsedflags{'error_message'}) |
1424
|
0 |
0 |
if ($parsedflags{'set_interclacks_mode'}) |
1428
|
0 |
0 |
if ($value) { } |
1445
|
0 |
0 |
unless (defined $self->{'cache'}{$ckey}{'cachetime'} and &looks_like_number($self->{'cache'}{$ckey}{'cachetime'})) |
1448
|
0 |
0 |
unless (defined $self->{'cache'}{$ckey}{'accesstime'} and &looks_like_number($self->{'cache'}{$ckey}{'accesstime'})) |
1451
|
0 |
0 |
unless (defined $self->{'cache'}{$ckey}{'deleted'} and $self->{'cache'}{$ckey}{'deleted'}) |
1454
|
0 |
0 |
unless (defined $self->{'cache'}{$ckey}{'data'}) |
1459
|
0 |
0 |
if (not $self->{'cache'}{$ckey}{'deleted'}) { } |
1478
|
0 |
0 |
if $key eq "Z" |
1479
|
0 |
0 |
if ($newflags{$overheadflags{$key}}) |
1483
|
0 |
0 |
if ($newflagstring eq "") |
1487
|
0 |
0 |
if ($parsedflags{'forward_message'}) |
1489
|
0 |
0 |
if $cid eq $overheadcid and not $parsedflags{'return_to_sender'} |
1504
|
0 |
0 |
if ($inmsg =~ /^KEYSYNC\ (.+?)\ (.+?)\ (.+?)\ (.+?)\=(.*)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^STORE\ (.+?)\=(.*)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^SETANDSTORE\ (.+?)\=(.*)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^RETRIEVE\ (.+)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^REMOVE\ (.+)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^INCREMENT\ (.+)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^DECREMENT\ (.+)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^KEYLIST/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^CLEARCACHE/u) { } |
1510
|
0 |
0 |
if ($atimestamp) |
1514
|
0 |
0 |
if (not defined $self->{'cache'}{$ckey} or $ctimestamp > $self->{'cache'}{$ckey}{'cachetime'}) |
1522
|
0 |
0 |
if ($cmode eq "D") |
1558
|
0 |
0 |
if (defined $self->{'cache'}{$ckey} and not $self->{'cache'}{$ckey}{'deleted'}) { } |
1578
|
0 |
0 |
if ($ckey =~ /(.+)\=(.+)/u) |
1584
|
0 |
0 |
if (defined $self->{'cache'}{$ckey} and not $self->{'cache'}{$ckey}{'deleted'} and &looks_like_number($self->{'cache'}{$ckey}{'data'})) |
1599
|
0 |
0 |
if ($ckey =~ /(.+)\=(.+)/u) |
1605
|
0 |
0 |
if (defined $self->{'cache'}{$ckey} and not $self->{'cache'}{$ckey}{'deleted'} and &looks_like_number($self->{'cache'}{$ckey}{'data'})) |
1638
|
0 |
0 |
if ($inmsg =~ /^LISTEN\ (.*)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^UNLISTEN\ (.*)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^MONITOR/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^UNMONITOR/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^QUIT/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^TIMEOUT/u and $self->{'clients'}{$cid}{'interclacks'}) { } |
|
0 |
0 |
elsif ($inmsg =~ /^PING/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^NOPING/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^CLIENTLIST/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^CLIENTDISCONNECT\ (.+)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^FLUSH\ (.+)/u) { } |
1684
|
0 |
0 |
if (defined $self->{'clients'}{$lmccid}) |
1704
|
0 |
0 |
if ($inmsg =~ /^NOTIFY\ (.*)/u) { } |
|
0 |
0 |
elsif ($inmsg =~ /^SET\ (.+?)\=(.*)/u) { } |