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
/
ping.pl
diff --git
a/cmd/ping.pl
b/cmd/ping.pl
index 1d75a8263d9c035fa4b5f0ecb5be97a6e5fc930c..89f43a0bb86144eb90284d0e1ed087f7dd0b221a 100644
(file)
--- a/
cmd/ping.pl
+++ b/
cmd/ping.pl
@@
-3,28
+3,46
@@
#
# Copyright (c) 1998 Dirk Koopman G1TLH
#
#
# Copyright (c) 1998 Dirk Koopman G1TLH
#
-# $Id$
#
#
+#
+
+my $counter;
+
+sub init
+{
+ $counter = 0;
+}
+
+sub handle
+{
+ my $self = shift;
+ my $line = uc shift; # only one callsign allowed
+ my ($call) = $line =~ /^\s*(\S+)/;
+
+# $DB::single = 1;
-my $self = shift;
-my $line = uc shift; # only one callsign allowed
-my ($call) = $line =~ /^\s*(\S+)/;
+ if ($self->{priv} < 1) {
+ if ($call) {
+ return (1, "PONG $call");
+ }
+ ++$counter, return (1, "PONG $counter")
+ }
-
# are we permitted
?
-
return (1, $self->msg('e5')) if $self->priv < 1
;
+
# is there a call
?
+
return (1, $self->msg('e6')) if !$call
;
-
# is there a call
?
-
return (1, $self->msg('e6')) if !$
call;
+
# is it me
?
+
return (1, $self->msg('pinge1')) if $call eq $main::my
call;
-# can we see it? Is it a node?
-my $noderef = DXCluster->get_exact($call);
-$noderef = DXChannel->get($call) unless $noderef;
+ # can we see it? Is it a node?
+ my $noderef = Route::Node::get($call);
-
return (1, $self->msg('e7', $call)) if !$noderef || !$noderef->pcversion
;
+
return (1, $self->msg('e7', $call)) unless $noderef
;
-# ping it
-
DXProt::addping($self->call
, $call);
+
# ping it
+
DXXml::Ping::add($self
, $call);
-return (1, $self->msg('pingo', $call));
+ return (1, $self->msg('pingo', $call));
+}