projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
remove removal of debug files from startup
[spider.git]
/
perl
/
ExtMsg.pm
diff --git
a/perl/ExtMsg.pm
b/perl/ExtMsg.pm
index 2f12d4262f87e2f6c68759ce76c80dace71368bb..78daffe263483b32d53a405c154ee696adadac47 100644
(file)
--- a/
perl/ExtMsg.pm
+++ b/
perl/ExtMsg.pm
@@
-21,6
+21,12
@@
use IO::File;
use IO::Socket;
use IPC::Open3;
use IO::Socket;
use IPC::Open3;
+use vars qw($VERSION $BRANCH);
+$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
+$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ ) || 0;
+$main::build += $VERSION;
+$main::branch += $BRANCH;
+
use vars qw(@ISA $deftimeout);
@ISA = qw(Msg);
use vars qw(@ISA $deftimeout);
@ISA = qw(Msg);
@@
-54,6
+60,12
@@
sub send_raw
Msg::set_event_handler ($sock, "write" => sub {$conn->_send(0)});
}
Msg::set_event_handler ($sock, "write" => sub {$conn->_send(0)});
}
+sub echo
+{
+ my $conn = shift;
+ $conn->{echo} = shift;
+}
+
sub dequeue
{
my $conn = shift;
sub dequeue
{
my $conn = shift;
@@
-77,7
+89,7
@@
sub dequeue
if ($conn->{msg} =~ /\cJ$/) {
delete $conn->{msg};
} else {
if ($conn->{msg} =~ /\cJ$/) {
delete $conn->{msg};
} else {
- $conn->{msg} =
pop @lines
;
+ $conn->{msg} =
~ s/([^\cM\cJ]*)\cM?\cJ//g
;
}
while (defined ($msg = shift @lines)) {
dbg("connect $conn->{cnum}: $msg") if $conn->{state} ne 'C' && isdbg('connect');
}
while (defined ($msg = shift @lines)) {
dbg("connect $conn->{cnum}: $msg") if $conn->{state} ne 'C' && isdbg('connect');
@@
-89,7
+101,7
@@
sub dequeue
&{$conn->{rproc}}($conn, "I$conn->{call}|$msg");
} elsif ($conn->{state} eq 'WL' ) {
$msg = uc $msg;
&{$conn->{rproc}}($conn, "I$conn->{call}|$msg");
} elsif ($conn->{state} eq 'WL' ) {
$msg = uc $msg;
- if (is_callsign($msg)) {
+ if (is_callsign($msg)
&& $msg !~ m|/|
) {
my $sort = $conn->{csort};
$sort = 'local' if $conn->{peerhost} eq "127.0.0.1";
$conn->to_connected($msg, 'A', $sort);
my $sort = $conn->{csort};
$sort = 'local' if $conn->{peerhost} eq "127.0.0.1";
$conn->to_connected($msg, 'A', $sort);
@@
-154,6
+166,7
@@
sub new_client {
$conn->_send_file("$main::data/issue");
$conn->send_raw("login: ");
$conn->_dotimeout(60);
$conn->_send_file("$main::data/issue");
$conn->send_raw("login: ");
$conn->_dotimeout(60);
+ $conn->{echo} = 1;
} else {
&{$conn->{eproc}}() if $conn->{eproc};
$conn->disconnect();
} else {
&{$conn->{eproc}}() if $conn->{eproc};
$conn->disconnect();