projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
strip out user conversion into convert-v3-to-v4.pl
[spider.git]
/
perl
/
DXProtHandle.pm
diff --git
a/perl/DXProtHandle.pm
b/perl/DXProtHandle.pm
index e268d0f9970b595d1a35df0da70c92ca335f826c..13305829f3214da57d81dfdae8f3eddef94df79e 100644
(file)
--- a/
perl/DXProtHandle.pm
+++ b/
perl/DXProtHandle.pm
@@
-252,7
+252,7
@@
sub handle_11
my $long = $user->long;
if (defined $lat && defined $long) {
$user->qra(DXBearing::lltoqra($lat, $long));
my $long = $user->long;
if (defined $lat && defined $long) {
$user->qra(DXBearing::lltoqra($lat, $long));
- $user->put;
+ $user->put
unless $self->{_nospawn}
;
}
}
}
}
@@
-285,7
+285,7
@@
sub handle_11
}
}
$user->lastoper($main::systime);
}
}
$user->lastoper($main::systime);
- $user->put;
+ $user->put
unless $self->{_nospawn}
;
}
}
}
}
}
}
@@
-512,7
+512,7
@@
sub handle_16
$user->homenode($parent->call) if !$user->homenode;
$user->node($parent->call);
$user->lastin($main::systime) unless DXChannel::get($call);
$user->homenode($parent->call) if !$user->homenode;
$user->node($parent->call);
$user->lastin($main::systime) unless DXChannel::get($call);
- $user->put;
+ $user->put
unless $self->{_nospawn}
;
# send info to all logged in thingies
$self->tell_login('loginu', "$ncall: $call") if $user->is_local_node;
# send info to all logged in thingies
$self->tell_login('loginu', "$ncall: $call") if $user->is_local_node;
@@
-624,16
+624,16
@@
sub handle_18
$self->{build} = 0 + $build;
$self->user->build(0 + $build);
$parent->build(0 + $build);
$self->{build} = 0 + $build;
$self->user->build(0 + $build);
$parent->build(0 + $build);
- dbg("DXSpider version $version build $build");
+ dbg("
$self->{call} =
DXSpider version $version build $build");
unless ($self->is_spider) {
dbg("Change U " . $self->user->sort . " C $self->{sort} -> S");
$self->user->sort('S');
unless ($self->is_spider) {
dbg("Change U " . $self->user->sort . " C $self->{sort} -> S");
$self->user->sort('S');
- $self->user->put;
+ $self->user->put
unless $self->{_nospawn}
;
$self->sort('S');
}
# $self->{handle_xml}++ if DXXml::available() && $pc->[1] =~ /\bxml/;
} else {
$self->sort('S');
}
# $self->{handle_xml}++ if DXXml::available() && $pc->[1] =~ /\bxml/;
} else {
- dbg("
Unknown software
");
+ dbg("
$self->{call} = Unknown software ($pc->[1] $pc->[2])
");
$self->version(50.0);
$self->version($pc->[2] / 100) if $pc->[2] && $pc->[2] =~ /^\d+$/;
$self->user->version($self->version);
$self->version(50.0);
$self->version($pc->[2] / 100) if $pc->[2] && $pc->[2] =~ /^\d+$/;
$self->user->version($self->version);
@@
-641,12
+641,12
@@
sub handle_18
if ($pc->[1] =~ /\bpc9x/) {
if ($self->{isolate}) {
if ($pc->[1] =~ /\bpc9x/) {
if ($self->{isolate}) {
- dbg("
pc9x recognised, but $self->{call}
is isolated, using old protocol");
+ dbg("
$self->{call} pc9x recognised, but node
is isolated, using old protocol");
} elsif (!$self->user->wantpc9x) {
} elsif (!$self->user->wantpc9x) {
- dbg("
pc9x explicitly switched off on $self->{call}
, using old protocol");
+ dbg("
$self->{call} pc9x explicitly switched off
, using old protocol");
} else {
$self->{do_pc9x} = 1;
} else {
$self->{do_pc9x} = 1;
- dbg("
Do px9x set on $self->{call}
");
+ dbg("
$self->{call} Set do PC9x
");
}
}
}
}
@@
-662,14
+662,19
@@
sub check_add_node
my $call = shift;
# add this station to the user database, if required (don't remove SSID from nodes)
my $call = shift;
# add this station to the user database, if required (don't remove SSID from nodes)
- my $user = DXUser::get_current($call);
- if (!$user) {
+ my $chan = DXChannel::get($call);
+ my $user;
+ $user = $chan->user if $chan;
+ $user ||= DXUser::get($call);
+ unless ($user) {
$user = DXUser->new($call);
$user->priv(1); # I have relented and defaulted nodes
$user->lockout(1);
$user->homenode($call);
$user->node($call);
$user->sort('A');
$user = DXUser->new($call);
$user->priv(1); # I have relented and defaulted nodes
$user->lockout(1);
$user->homenode($call);
$user->node($call);
$user->sort('A');
+ $user->lastin($main::systime); # this make it last longer than just this invocation
+ $user->put unless $chan && $chan->{_nospawn}; # just to make sure it gets written away!!!
}
return $user;
}
}
return $user;
}
@@
-798,7
+803,7
@@
sub handle_19
$mref->stop_msg($call) if $mref;
$user->lastin($main::systime) unless DXChannel::get($call);
$mref->stop_msg($call) if $mref;
$user->lastin($main::systime) unless DXChannel::get($call);
- $user->put;
+ $user->put
unless $self->{_nospawn}
;
}
# we are not automatically sending out PC19s, we send out a composite PC21,PC19 instead
}
# we are not automatically sending out PC19s, we send out a composite PC21,PC19 instead
@@
-973,7
+978,7
@@
sub handle_23
# note this only takes the first one it gets
Geomag::update($d, $pc->[2], $sfi, $k, $i, @$pc[6..8], $r);
# note this only takes the first one it gets
Geomag::update($d, $pc->[2], $sfi, $k, $i, @$pc[6..8], $r);
- dbg("WWV:
$d $pc->[2], sfi:$sfi k:$k info:$i $pc->[6] $pc->[7]
$pc->[8] $r route: $origin") if isdbg('progress');
+ dbg("WWV:
<$pc->[2]>, sfi=$sfi k=$k info=$i '$pc->[6]' $pc->[7]\@
$pc->[8] $r route: $origin") if isdbg('progress');
if (defined &Local::wwv) {
my $rep;
if (defined &Local::wwv) {
my $rep;
@@
-1232,7
+1237,7
@@
sub handle_41
}
}
$user->lastoper($main::systime); # to cut down on excessive for/opers being generated
}
}
$user->lastoper($main::systime); # to cut down on excessive for/opers being generated
- $user->put;
+ $user->put
unless $self->{_nospawn}
;
unless ($self->{isolate}) {
DXChannel::broadcast_nodes($line, $self); # send it to everyone but me
unless ($self->{isolate}) {
DXChannel::broadcast_nodes($line, $self); # send it to everyone but me
@@
-1377,7
+1382,7
@@
sub handle_73
}
my $wcy = WCY::update($d, @$pc[2..12]);
}
my $wcy = WCY::update($d, @$pc[2..12]);
- dbg("WCY:
" . join(', ', @$pc[2..12]) . "
route: $origin") if isdbg('progress');
+ dbg("WCY:
<$pc->[2]> K=$pc->[5] expK=$pc->[6] A=$pc->[4] R=$pc->[7] SFI=$pc->[3] SA=$pc->[8] GMF=$pc->[9] Au=$pc->[10] $pc->[11]\@$pc->[12]
route: $origin") if isdbg('progress');
if (defined &Local::wcy) {
my $rep;
if (defined &Local::wcy) {
my $rep;