projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix probs with eph dup deleting
[spider.git]
/
perl
/
DXProt.pm
diff --git
a/perl/DXProt.pm
b/perl/DXProt.pm
index 6c18a83052329dcddf29c42d149e38fd94d1e898..5ab4186b2c64cb6e8082f5b57800a4c61dc30a82 100644
(file)
--- a/
perl/DXProt.pm
+++ b/
perl/DXProt.pm
@@
-621,7
+621,7
@@
sub normal
next unless $call && $conf && defined $here && is_callsign($call);
next if $call eq $main::mycall;
next unless $call && $conf && defined $here && is_callsign($call);
next if $call eq $main::mycall;
- eph_del_regex("^PC17\
^$call
\^$ncall");
+ eph_del_regex("^PC17\
\^$call\
\^$ncall");
$conf = $conf eq '*';
$conf = $conf eq '*';
@@
-673,7
+673,7
@@
sub normal
return;
}
return;
}
- eph_del_regex("^PC16
.*
$ncall.*$ucall");
+ eph_del_regex("^PC16
\\^
$ncall.*$ucall");
if ($ncall eq $main::mycall) {
dbg("PCPROT: trying to alter config on this node from outside!") if isdbg('chanerr');
if ($ncall eq $main::mycall) {
dbg("PCPROT: trying to alter config on this node from outside!") if isdbg('chanerr');
@@
-743,7
+743,7
@@
sub normal
my $ver = $field[$i+3];
next unless defined $here && defined $conf && is_callsign($call);
my $ver = $field[$i+3];
next unless defined $here && defined $conf && is_callsign($call);
- eph_del_regex("^PC(?:21\
^$call|17\^[^\^]+
\^$call)");
+ eph_del_regex("^PC(?:21\
\^$call|17\\^[^\\^]+\
\^$call)");
# check for sane parameters
# $ver = 5000 if $ver eq '0000';
# check for sane parameters
# $ver = 5000 if $ver eq '0000';
@@
-834,7
+834,6
@@
sub normal
# as a PC39: I have gone away
if ($call eq $self->call) {
$self->disconnect(1);
# as a PC39: I have gone away
if ($call eq $self->call) {
$self->disconnect(1);
- eph_del_regex("^PC(?:1[679]|21).*$field[1]");
return;
}
return;
}
@@
-993,7
+992,7
@@
sub normal
}
if ($pcno == 35) { # remote command replies
}
if ($pcno == 35) { # remote command replies
- eph_del_regex("^PC35\
^$field[2]\^$field[1]
\^");
+ eph_del_regex("^PC35\
\^$field[2]\\^$field[1]\
\^");
$self->process_rcmd_reply($field[1], $field[2], $field[1], $field[3]);
return;
}
$self->process_rcmd_reply($field[1], $field[2], $field[1], $field[3]);
return;
}
@@
-1007,7
+1006,6
@@
sub normal
if ($pcno == 39) { # incoming disconnect
if ($field[1] eq $self->{call}) {
$self->disconnect(1);
if ($pcno == 39) { # incoming disconnect
if ($field[1] eq $self->{call}) {
$self->disconnect(1);
- eph_del_regex("^PC(?:1[679]|21).*$field[1]");
} else {
dbg("PCPROT: came in on wrong channel") if isdbg('chanerr');
}
} else {
dbg("PCPROT: came in on wrong channel") if isdbg('chanerr');
}
@@
-1766,6
+1764,10
@@
sub disconnect
$self->send_now("D", DXProt::pc39($main::mycall, $self->msg('disc1', "System Op")));
}
$self->send_now("D", DXProt::pc39($main::mycall, $self->msg('disc1', "System Op")));
}
+ # get rid of any PC16 and 19s
+ eph_del_regex("^PC16\\^$call");
+ eph_del_regex("^PC19\\^.*$call");
+
# do routing stuff
my $node = Route::Node::get($call);
my @rout;
# do routing stuff
my $node = Route::Node::get($call);
my @rout;