X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=cmd%2Frcmd.pl;h=396cd45b68ae80df2b6b58f9011bfa4f102db630;hb=f8e8ba13693b1a7685601f1847cb8e6493604ed9;hp=caa9fb83ad445c13e770a7ff9b7aa61fcc93dacb;hpb=4d3067793942b3f4518615906dde50db5b76464a;p=spider.git diff --git a/cmd/rcmd.pl b/cmd/rcmd.pl index caa9fb83..396cd45b 100644 --- a/cmd/rcmd.pl +++ b/cmd/rcmd.pl @@ -14,7 +14,7 @@ my ($call) = $line =~ /^\s*(\S+)/; return (1, $self->msg('e5')) if $self->priv < 6; # is there a call? -return (1, $self->msg('e6')) if !$call; +return (1, $self->msg('e6')) unless $call; # remove the callsign from the line $line =~ s/^\s*$call\s+//; @@ -22,9 +22,13 @@ $line =~ s/^\s*$call\s+//; # can we see it? Is it a node? $call = uc $call; my $noderef = DXCluster->get_exact($call); -return (1, $self->msg('e7', $call)) if !$noderef || !$noderef->pcversion; +unless ($noderef) { + $noderef = DXChannel->get($call); + $noderef = undef unless $noderef && $noderef->is_node; +} +return (1, $self->msg('e7', $call)) unless $noderef; -# ping it -DXProt::addrcmd($self->call, $call, $line); +# rcmd it +DXProt::addrcmd($self, $call, $line); return (1, $self->msg('rcmdo', $line, $call));