projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
improve dbg tagging and dbgdump, Add call to conns
[spider.git]
/
perl
/
cluster.pl
diff --git
a/perl/cluster.pl
b/perl/cluster.pl
index e13fb03493dea1093bb0c1e2844005fad9ed7078..bd8de8c3c2229ffc1195819680063ae06b0e28ec 100755
(executable)
--- a/
perl/cluster.pl
+++ b/
perl/cluster.pl
@@
-13,6
+13,7
@@
package main;
require 5.10.1;
package main;
require 5.10.1;
+
use warnings;
use vars qw($root $is_win $systime $lockfn @inqueue $starttime $lockfn @outstanding_connects
use warnings;
use vars qw($root $is_win $systime $lockfn @inqueue $starttime $lockfn @outstanding_connects
@@
-30,10
+31,12
@@
$yes = 'Yes'; # visual representation of yes
$no = 'No'; # ditto for no
$user_interval = 11*60; # the interval between unsolicited prompts if no traffic
$no = 'No'; # ditto for no
$user_interval = 11*60; # the interval between unsolicited prompts if no traffic
+
# make sure that modules are searched in the order local then perl
BEGIN {
umask 002;
# make sure that modules are searched in the order local then perl
BEGIN {
umask 002;
-
+ $SIG{'__WARN__'} = sub { warn $_[0] if $DOWARN };
+
# take into account any local::lib that might be present
eval {
require local::lib;
# take into account any local::lib that might be present
eval {
require local::lib;
@@
-87,14
+90,12
@@
BEGIN {
use DXVars;
use SysVar;
use DXVars;
use SysVar;
-use strict;
-
# order here is important - DXDebug snarfs Carp et al so that Mojo errors go into the debug log
# order here is important - DXDebug snarfs Carp et al so that Mojo errors go into the debug log
-use DXDebug;
-
use Mojolicious 7.26;
use Mojo::IOLoop;
use Mojolicious 7.26;
use Mojo::IOLoop;
+$DOWARN = 1;
+use DXDebug;
use Msg;
use IntMsg;
use Internet;
use Msg;
use IntMsg;
use Internet;
@@
-146,7
+147,7
@@
use DXXml;
use DXSql;
use IsoTime;
use BPQMsg;
use DXSql;
use IsoTime;
use BPQMsg;
-
+use RBN;
use Data::Dumper;
use Data::Dumper;
@@
-157,6
+158,8
@@
use Web;
use vars qw($version $build $gitversion $gitbranch);
use vars qw($version $build $gitversion $gitbranch);
+use strict;
+
use Local;
use Local;
@@
-189,6
+192,7
@@
our $ending; # signal that we are ending;
our $broadcast_debug; # allow broadcasting of debug info down "enhanced" user connections
our $clssecs; # the amount of cpu time the DXSpider process have consumed
our $cldsecs; # the amount of cpu time any child processes have consumed
our $broadcast_debug; # allow broadcasting of debug info down "enhanced" user connections
our $clssecs; # the amount of cpu time the DXSpider process have consumed
our $cldsecs; # the amount of cpu time any child processes have consumed
+our $allowslashcall; # Allow / in connecting callsigns (ie PA0/G1TLH, or even PA0/G1TLH/2)
# send a message to call on conn and disconnect
# send a message to call on conn and disconnect
@@
-231,7
+235,7
@@
sub new_channel
$user->long($main::mylongitude);
$user->qra($main::mylocator);
}
$user->long($main::mylongitude);
$user->qra($main::mylocator);
}
- $user->startt($main::systime);
+ $user->startt($main::systime);
$conn->conns($call);
$dxchan = Web->new($call, $conn, $user);
$dxchan->enhanced(1);
$conn->conns($call);
$dxchan = Web->new($call, $conn, $user);
$dxchan->enhanced(1);
@@
-247,6
+251,7
@@
sub new_channel
# is he locked out ?
$user = DXUser::get_current($call);
# is he locked out ?
$user = DXUser::get_current($call);
+ $conn->conns($call);
my $basecall = $call;
$basecall =~ s/-\d+$//; # remember this for later multiple user processing
my $lock;
my $basecall = $call;
$basecall =~ s/-\d+$//; # remember this for later multiple user processing
my $lock;
@@
-346,7
+351,9
@@
sub new_channel
$user->startt($systime); # mark the start time of this connection
if ($user->is_node) {
$user->startt($systime); # mark the start time of this connection
if ($user->is_node) {
- $dxchan = DXProt->new($call, $conn, $user);
+ $dxchan = DXProt->new($call, $conn, $user);
+ } elsif ($user->is_rbn) {
+ $dxchan = RBN->new($newcall, $conn, $user);
} elsif ($user->is_user) {
$dxchan = DXCommandmode->new($newcall, $conn, $user);
} else {
} elsif ($user->is_user) {
$dxchan = DXCommandmode->new($newcall, $conn, $user);
} else {
@@
-563,14
+570,14
@@
sub setup_start
my $oldsort = $ref->sort;
if ($oldsort ne 'S') {
$ref->sort('S');
my $oldsort = $ref->sort;
if ($oldsort ne 'S') {
$ref->sort('S');
- dbg
"Resetting node type from $oldsort -> DXSpider ('S')"
;
+ dbg
("Resetting node type from $oldsort -> DXSpider ('S')")
;
}
$ref = DXUser::get($myalias);
die "$myalias missing, run the create_sysop.pl script and please RTFM" unless $ref && $ref->priv == 9;
$oldsort = $ref->sort;
if ($oldsort ne 'U') {
$ref->sort('U');
}
$ref = DXUser::get($myalias);
die "$myalias missing, run the create_sysop.pl script and please RTFM" unless $ref && $ref->priv == 9;
$oldsort = $ref->sort;
if ($oldsort ne 'U') {
$ref->sort('U');
- dbg
"Resetting sysop user type from $oldsort -> User ('U')"
;
+ dbg
("Resetting sysop user type from $oldsort -> User ('U')")
;
}
}
}
}
@@
-748,18
+755,17
@@
sub per_sec
IsoTime::update($systime);
DXCommandmode::process(); # process ongoing command mode stuff
DXProt::process(); # process ongoing ak1a pcxx stuff
IsoTime::update($systime);
DXCommandmode::process(); # process ongoing command mode stuff
DXProt::process(); # process ongoing ak1a pcxx stuff
- DXCron::process(); # do cron jobs
DXXml::process();
DXConnect::process();
DXMsg::process();
DXDb::process();
DXUser::process();
DXDupe::process();
DXXml::process();
DXConnect::process();
DXMsg::process();
DXDb::process();
DXUser::process();
DXDupe::process();
- DXCron::process(); # do cron jobs
IsoTime::update($systime);
DXConnect::process();
DXUser::process();
AGWMsg::process();
IsoTime::update($systime);
DXConnect::process();
DXUser::process();
AGWMsg::process();
+ DXCron::process(); # do cron jobs
Timer::handler();
DXLog::flushall();
Timer::handler();
DXLog::flushall();
@@
-770,20
+776,19
@@
sub per_10_sec
}
}
-
sub per_minute
{
sub per_minute
{
-
+ RBN::per_minute();
}
sub per_10_minute
{
}
sub per_10_minute
{
-
+ RBN::per_10_minute();
}
sub per_hour
{
}
sub per_hour
{
-
+ RBN::per_hour();
}
sub per_day
}
sub per_day