projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
disable propagation of PC9x sentences
[spider.git]
/
perl
/
cluster.pl
diff --git
a/perl/cluster.pl
b/perl/cluster.pl
index 2510c940cd5bfdc107ce2d5dac415628a1887fe3..8aade278e42ebe2bb38d1297b21cf6e85491a260 100755
(executable)
--- a/
perl/cluster.pl
+++ b/
perl/cluster.pl
@@
-68,7
+68,6
@@
use DXCommandmode;
use DXProtVars;
use DXProtout;
use DXProt;
use DXProtVars;
use DXProtout;
use DXProt;
-use Aranea;
use DXMsg;
use DXCron;
use DXConnect;
use DXMsg;
use DXCron;
use DXConnect;
@@
-99,9
+98,10
@@
use Mrtg;
use USDB;
use UDPMsg;
use QSL;
use USDB;
use UDPMsg;
use QSL;
-use Thingy;
use RouteDB;
use RouteDB;
-use AMsg;
+use DXXml;
+use DXSql;
+use IsoTime;
use Data::Dumper;
use IO::File;
use Data::Dumper;
use IO::File;
@@
-116,7
+116,7
@@
use strict;
use vars qw(@inqueue $systime $version $starttime $lockfn @outstanding_connects
$zombies $root @listeners $lang $myalias @debug $userfn $clusteraddr
$clusterport $mycall $decease $is_win $routeroot $me $reqreg $bumpexisting
use vars qw(@inqueue $systime $version $starttime $lockfn @outstanding_connects
$zombies $root @listeners $lang $myalias @debug $userfn $clusteraddr
$clusterport $mycall $decease $is_win $routeroot $me $reqreg $bumpexisting
- $allowdxby $dbh $dsn $dbuser $dbpass
+ $allowdxby $dbh $dsn $dbuser $dbpass
$do_xml
);
@inqueue = (); # the main input queue, an array of hashes
);
@inqueue = (); # the main input queue, an array of hashes
@@
-133,9
+133,10
@@
$allowdxby = 0; # 1 = allow "dx by <othercall>", 0 - don't allow it
use vars qw($VERSION $BRANCH $build $branch);
$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ || (0,0));
use vars qw($VERSION $BRANCH $build $branch);
$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ || (0,0));
-$main::build += 1; # add an offset to make it bigger than last system
$main::build += $VERSION;
$main::branch += $BRANCH;
$main::build += $VERSION;
$main::branch += $BRANCH;
+$main::build -= 3; # fudge (put back for now)
+
# send a message to call on conn and disconnect
# send a message to call on conn and disconnect
@@
-181,8
+182,7
@@
sub new_channel
if ($bumpexisting) {
my $ip = $conn->{peerhost} || 'unknown';
$dxchan->send_now('D', DXM::msg($lang, 'conbump', $call, $ip));
if ($bumpexisting) {
my $ip = $conn->{peerhost} || 'unknown';
$dxchan->send_now('D', DXM::msg($lang, 'conbump', $call, $ip));
- Log('DXCommand', "$call bumped off by $ip, disconnected");
- dbg("$call bumped off by $ip, disconnected");
+ LogDbg('DXCommand', "$call bumped off by $ip, disconnected");
$dxchan->disconnect;
} else {
already_conn($conn, $call, DXM::msg($lang, 'conother', $call, $main::mycall));
$dxchan->disconnect;
} else {
already_conn($conn, $call, DXM::msg($lang, 'conother', $call, $main::mycall));
@@
-198,7
+198,7
@@
sub new_channel
if ($baseuser && $baseuser->lockout || $lock) {
if (!$user || !defined $lock || $lock) {
my $host = $conn->{peerhost} || "unknown";
if ($baseuser && $baseuser->lockout || $lock) {
if (!$user || !defined $lock || $lock) {
my $host = $conn->{peerhost} || "unknown";
- Log('DXCommand', "$call on $host is locked out, disconnected");
+ Log
Dbg
('DXCommand', "$call on $host is locked out, disconnected");
$conn->disconnect;
return;
}
$conn->disconnect;
return;
}
@@
-283,8
+283,7
@@
sub cease
$l->close_server;
}
$l->close_server;
}
- dbg("DXSpider version $version, build $build ended") if isdbg('chan');
- Log('cluster', "DXSpider V$version, build $build ended");
+ LogDbg('cluster', "DXSpider V$version, build $build ended");
dbgclose();
Logclose();
dbgclose();
Logclose();
@@
-335,6
+334,10
@@
sub AGWrestart
$starttime = $systime = time;
$lang = 'en' unless $lang;
$starttime = $systime = time;
$lang = 'en' unless $lang;
+unless ($DB::VERSION) {
+ $SIG{INT} = $SIG{TERM} = \&cease;
+}
+
# open the debug file, set various FHs to be unbuffered
dbginit(\&DXCommandmode::broadcast_debug);
foreach (@debug) {
# open the debug file, set various FHs to be unbuffered
dbginit(\&DXCommandmode::broadcast_debug);
foreach (@debug) {
@@
-346,23
+349,20
@@
STDOUT->autoflush(1);
$build += $main::version;
$build = "$build.$branch" if $branch;
$build += $main::version;
$build = "$build.$branch" if $branch;
-Log('cluster', "DXSpider V$version, build $build started");
+# try to load the database
+if (DXSql::init($dsn)) {
+ $dbh = DXSql->new($dsn);
+ $dbh = $dbh->connect($dsn, $dbuser, $dbpass) if $dbh;
+}
+
+# try to load XML::Simple
+DXXml::init();
# banner
my ($year) = (gmtime)[5];
$year += 1900;
# banner
my ($year) = (gmtime)[5];
$year += 1900;
+LogDbg('cluster', "DXSpider V$version, build $build started");
dbg("Copyright (c) 1998-$year Dirk Koopman G1TLH");
dbg("Copyright (c) 1998-$year Dirk Koopman G1TLH");
-dbg("DXSpider Version $version, build $build started");
-
-# try to load the database
-if ($dsn && -e "$root/perl/DXSql.pm") {
- require DXSql;
- import DXSql;
-
- if (DXSql::init()) {
- $dbh = DXSql->new($dsn, $dbuser, $dbpass);
- }
-}
# load Prefixes
dbg("loading prefixes ...");
# load Prefixes
dbg("loading prefixes ...");
@@
-460,7
+460,6
@@
Spot->init();
# initialise the protocol engine
dbg("Start Protocol Engines ...");
DXProt->init();
# initialise the protocol engine
dbg("Start Protocol Engines ...");
DXProt->init();
-Aranea->init();
# put in a DXCluster node for us here so we can add users and take them away
$routeroot = Route::Node->new($mycall, $version*100+5300, Route::here($main::me->here)|Route::conf($main::me->conf));
# put in a DXCluster node for us here so we can add users and take them away
$routeroot = Route::Node->new($mycall, $version*100+5300, Route::here($main::me->here)|Route::conf($main::me->conf));
@@
-511,12
+510,12
@@
for (;;) {
# do timed stuff, ongoing processing happens one a second
if ($timenow != $systime) {
# do timed stuff, ongoing processing happens one a second
if ($timenow != $systime) {
- reap if $zombies;
-
$systime = $timenow
;
+ reap
()
if $zombies;
+
IsoTime::update($systime = $timenow)
;
DXCron::process(); # do cron jobs
DXCommandmode::process(); # process ongoing command mode stuff
DXCron::process(); # do cron jobs
DXCommandmode::process(); # process ongoing command mode stuff
+ DXXml::process();
DXProt::process(); # process ongoing ak1a pcxx stuff
DXProt::process(); # process ongoing ak1a pcxx stuff
- Aranea::process();
DXConnect::process();
DXMsg::process();
DXDb::process();
DXConnect::process();
DXMsg::process();
DXDb::process();