projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix no_node_in_dupe
[spider.git]
/
cmd
/
dx.pl
diff --git
a/cmd/dx.pl
b/cmd/dx.pl
index f86b46a681c00299ba77d5efbc7e596123b01d16..a6475347569bae6ce7084ada8aa4b6c3a09a9df7 100644
(file)
--- a/
cmd/dx.pl
+++ b/
cmd/dx.pl
@@
-23,6
+23,11
@@
my $oline = $line;
return (1, $self->msg('e5')) if $self->remotecmd || $self->inscript;
return (1, $self->msg('e28')) unless $self->isregistered;
return (1, $self->msg('e5')) if $self->remotecmd || $self->inscript;
return (1, $self->msg('e28')) unless $self->isregistered;
+
+my $addr = DXCommandmode::alias_localhost($self->hostname || '127.0.0.1');
+
+Log('cmd', "$self->{call}|$addr|dx|$line");
+
my @bad;
if (@bad = BadWords::check($line)) {
$self->badcount(($self->badcount||0) + @bad);
my @bad;
if (@bad = BadWords::check($line)) {
$self->badcount(($self->badcount||0) + @bad);
@@
-41,7
+46,7
@@
if ($f[0] =~ /^by$/i) {
return (1, $self->msg('e5')) unless $main::allowdxby || $self->priv > 1;
$spotter = uc $f[1];
$line =~ s/^\s*$f[0]\s+$f[1]\s+//;
return (1, $self->msg('e5')) unless $main::allowdxby || $self->priv > 1;
$spotter = uc $f[1];
$line =~ s/^\s*$f[0]\s+$f[1]\s+//;
- @f = split /\s+/, $line, 3;
+ @f = split /\s+/, $line, 3;
return (1, $self->msg('dx2')) unless @f >= 2;
}
return (1, $self->msg('dx2')) unless @f >= 2;
}
@@
-52,7
+57,7
@@
if ($f[0] eq 'ip') {
if (is_ipaddr($f[1])) {
$ipaddr = $f[1];
} else {
if (is_ipaddr($f[1])) {
$ipaddr = $f[1];
} else {
- return (1, $self->msg('dx
3
', $f[1]));
+ return (1, $self->msg('dx
4
', $f[1]));
}
$line =~ s/^\s*$f[0]\s+$f[1]\s+//;
@f = split /\s+/, $line, 3;
}
$line =~ s/^\s*$f[0]\s+$f[1]\s+//;
@f = split /\s+/, $line, 3;
@@
-69,13
+74,13
@@
if (is_freq($f[1]) && $f[0] =~ m{^[\w\d]+(?:/[\w\d]+){0,2}$}) {
} else {
return (1, $self->msg('dx3'));
}
} else {
return (1, $self->msg('dx3'));
}
-$line =~ s/^\s*$f[0]\s+$f[1]\s+//;
+$line =~ s/^\s*$f[0]//;
+$line =~ s/^\s*$f[1]//;
+$line = unpad($line);
$line =~ s/\t+/ /g; # do this here because it needs to be stopped ASAP!
$line ||= ' ';
$line =~ s/\t+/ /g; # do this here because it needs to be stopped ASAP!
$line ||= ' ';
-my $addr = $self->hostname;
if ($self->conn && $self->conn->peerhost) {
if ($self->conn && $self->conn->peerhost) {
-# $ipaddr = $addr unless !is_ipaddr($addr) || $addr =~ /^127\./ || $addr =~ /^::[0-9a-f]+$/;
$ipaddr ||= $addr; # force a PC61
} elsif ($self->inscript) {
$ipaddr = "script";
$ipaddr ||= $addr; # force a PC61
} elsif ($self->inscript) {
$ipaddr = "script";
@@
-91,7
+96,7
@@
my $callnoid = basecall($self->{call});
if ($DXProt::baddx->in($spotted)) {
$localonly++;
}
if ($DXProt::baddx->in($spotted)) {
$localonly++;
}
-if ($DXProt::badspotter->in($spotternoid)) {
+if ($DXProt::badspotter->in($spotternoid)
|| $self->badip
) {
LogDbg('DXCommand', "badspotter $spotternoid as $spotter ($oline) from $addr");
$localonly++;
}
LogDbg('DXCommand', "badspotter $spotternoid as $spotter ($oline) from $addr");
$localonly++;
}
@@
-150,7
+155,7
@@
return (1, @out) unless $valid;
# Store it here (but only if it isn't baddx)
my $t = (int ($main::systime/60)) * 60;
# Store it here (but only if it isn't baddx)
my $t = (int ($main::systime/60)) * 60;
-return (1, $self->msg('dup')) if Spot::dup($freq, $spotted, $t, $line, $spotter);
+return (1, $self->msg('dup')) if Spot::dup($freq, $spotted, $t, $line, $spotter
, $main::mycall
);
my @spot = Spot::prepare($freq, $spotted, $t, $line, $spotter, $main::mycall, $ipaddr);
#$DB::single = 1;
my @spot = Spot::prepare($freq, $spotted, $t, $line, $spotter, $main::mycall, $ipaddr);
#$DB::single = 1;
@@
-168,7
+173,7
@@
if ($freq =~ /^69/ || $localonly) {
} else {
# send orf to the users
$ipaddr ||= $main::mycall; # emergency backstop
} else {
# send orf to the users
$ipaddr ||= $main::mycall; # emergency backstop
- my $spot = DXProt::pc61($spotter, $freq, $spotted,
$line,
$ipaddr);
+ my $spot = DXProt::pc61($spotter, $freq, $spotted,
unpad($line),
$ipaddr);
$self->dx_spot(undef, undef, @spot);
if ($self->isslugged) {
$self->dx_spot(undef, undef, @spot);
if ($self->isslugged) {
@@
-184,5
+189,3
@@
return (1, @out);
-
-