X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2Fcluster.pl;h=d7dd9a0c4fb2469fdd95241c70749e3429491fe5;hb=495e620d66fbc1b8c64dd65ff8d89fc43a2e6f08;hp=fe881f1eaa78a4dde7b525a227f98af3816930ab;hpb=4a1e9ef57551080432ecfcfcb5d7a924540ee06f;p=spider.git diff --git a/perl/cluster.pl b/perl/cluster.pl index fe881f1e..d7dd9a0c 100755 --- a/perl/cluster.pl +++ b/perl/cluster.pl @@ -107,35 +107,30 @@ use Data::Dumper; use IO::File; use Fcntl ':flock'; use POSIX ":sys_wait_h"; +use Version; use Local; package main; use strict; -use vars qw(@inqueue $systime $version $starttime $lockfn @outstanding_connects +use vars qw(@inqueue $systime $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 $do_xml $systime_days $systime_daystart + $can_encode ); @inqueue = (); # the main input queue, an array of hashes $systime = 0; # the time now (in seconds) -$version = "1.53"; # the version no of the software $starttime = 0; # the starting time of the cluster -#@outstanding_connects = (); # list of outstanding connects +@outstanding_connects = (); # list of outstanding connects @listeners = (); # list of listeners $reqreg = 0; # 1 = registration required, 2 = deregister people $bumpexisting = 1; # 1 = allow new connection to disconnect old, 0 - don't allow it $allowdxby = 0; # 1 = allow "dx by ", 0 - don't allow it -use vars qw($VERSION $BRANCH $build $branch); -($VERSION, $BRANCH) = dxver( q$Revision$); -$main::build -= 2; # fudge (put back for now) - - - # send a message to call on conn and disconnect sub already_conn { @@ -344,16 +339,25 @@ foreach (@debug) { } STDOUT->autoflush(1); -# calculate build number -$build += $main::version; -$build = "$build.$branch" if $branch; - # try to load the database if (DXSql::init($dsn)) { $dbh = DXSql->new($dsn); $dbh = $dbh->connect($dsn, $dbuser, $dbpass) if $dbh; } +# try to load Encode +{ + no warnings; + my $w = $SIG{__DIE__}; + $SIG{__DIE__} = 'IGNORE'; + eval { require Encode; }; + unless ($@) { + import Encode; + $can_encode = 1; + } + $SIG{__DIE__} = $w; +} + # try to load XML::Simple DXXml::init(); @@ -462,7 +466,7 @@ DXProt->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)); -$routeroot->do_pc92(1); +$routeroot->do_pc9x(1); $routeroot->via_pc92(1); # make sure that there is a routing OUTPUT node default file