remove any leading ::ffff: on ipv4 addresses
[spider.git] / perl / cluster.pl
index ef565eb7ddebae52ad0dac1246500f1b87b4d52a..4e5c157f2a8fd47b79cf0c0e88d531b8df051fee 100755 (executable)
@@ -89,6 +89,10 @@ use SysVar;
 
 use strict;
 
+# 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 Msg;
@@ -98,7 +102,6 @@ use Listeners;
 use ExtMsg;
 use AGWConnect;
 use AGWMsg;
-use DXDebug;
 use DXLog;
 use DXLogPrint;
 use DXUtil;
@@ -144,6 +147,8 @@ use DXSql;
 use IsoTime;
 use BPQMsg;
 
+
+
 use Data::Dumper;
 use IO::File;
 use Fcntl ':flock';
@@ -239,7 +244,7 @@ sub new_channel
                                return;
                        }
                        if ($bumpexisting) {
-                               my $ip = $conn->peerhost || 'unknown';
+                               my $ip = $dxchan->hostname;
                                $dxchan->send_now('D', DXM::msg($lang, 'conbump', $call, $ip));
                                LogDbg('DXCommand', "$call bumped off by $ip, disconnected");
                                $dxchan->disconnect;
@@ -272,7 +277,7 @@ sub new_channel
                my $lock = $user->lockout if $user;
                if ($baseuser && $baseuser->lockout || $lock) {
                        if (!$user || !defined $lock || $lock) {
-                               my $host = $conn->peerhost || "unknown";
+                               my $host = $conn->peerhost;
                                LogDbg('DXCommand', "$call on $host is locked out, disconnected");
                                $conn->disconnect;
                                return;
@@ -632,6 +637,8 @@ our $io_disconnected;
 sub idle_loop
 {
        BPQMsg::process();
+#      DXCommandmode::process(); # process ongoing command mode stuff
+#      DXProt::process();              # process ongoing ak1a pcxx stuff
 
        if (defined &Local::process) {
                eval {
@@ -675,11 +682,11 @@ sub per_sec
                $systime_days = $days;
                $systime_daystart = $days * 86400;
        }
+       DXCommandmode::process(); # process ongoing command mode stuff
+       DXProt::process();              # process ongoing ak1a pcxx stuff
        IsoTime::update($systime);
        DXCron::process();      # do cron jobs
-       DXCommandmode::process(); # process ongoing command mode stuff
        DXXml::process();
-       DXProt::process();              # process ongoing ak1a pcxx stuff
        DXConnect::process();
        DXMsg::process();
        DXDb::process();
@@ -687,7 +694,6 @@ sub per_sec
        DXDupe::process();
        DXCron::process();                      # do cron jobs
        IsoTime::update($systime);
-       DXProt::process();                      # process ongoing ak1a pcxx stuff
        DXConnect::process();
        DXUser::process();
        AGWMsg::process();