projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix ping problem
[spider.git]
/
perl
/
DXChannel.pm
diff --git
a/perl/DXChannel.pm
b/perl/DXChannel.pm
index 240142c65107a80e6979fa417935f247fd4f1866..e60ce6c6be307e382420bb74a9828d9427780312 100644
(file)
--- a/
perl/DXChannel.pm
+++ b/
perl/DXChannel.pm
@@
-33,6
+33,8
@@
use DXDebug;
use Filter;
use Prefix;
use Route;
use Filter;
use Prefix;
use Route;
+use DXLog;
+
use strict;
use vars qw(%channels %valid @ISA $count $maxerrors);
use strict;
use vars qw(%channels %valid @ISA $count $maxerrors);
@@
-124,6
+126,7
@@
$count = 0;
talk => '0,Want Talk,yesno',
talklist => '0,Talk List,parray',
user => '9,DXUser ref',
talk => '0,Want Talk,yesno',
talklist => '0,Talk List,parray',
user => '9,DXUser ref',
+ user_interval => '0,Prompt Idle Time',
ve7cc => '0,VE7CC program special,yesno',
verified => '9,Verified?,yesno',
version => '1,Node Version',
ve7cc => '0,VE7CC program special,yesno',
verified => '9,Verified?,yesno',
version => '1,Node Version',
@@
-135,7
+138,7
@@
$count = 0;
wx => '0,Want WX,yesno',
);
wx => '0,Want WX,yesno',
);
-$maxerrors =
5;
# the maximum number of concurrent errors allowed before disconnection
+$maxerrors =
10;
# the maximum number of concurrent errors allowed before disconnection
# object destruction
sub DESTROY
# object destruction
sub DESTROY
@@
-204,12
+207,13
@@
sub _error_out
{
my $self = shift;
my $e = shift;
{
my $self = shift;
my $e = shift;
- if (++$self->{errors} > $maxerrors) {
+ if (
$self != $main::me &&
++$self->{errors} > $maxerrors) {
$self->send($self->msg('e26'));
$self->send($self->msg('e26'));
+ LogDbg('err', "DXChannel $self->{call}: too many errors ($self->{errors} > $maxerrors), disconnecting");
$self->disconnect;
return ();
} else {
$self->disconnect;
return ();
} else {
- return ($
self->msg($e)
);
+ return ($
e ? $self->msg($e) : ''
);
}
}
}
}