X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FExtMsg.pm;h=cd18eb9318039974b7ae7f95101c7c9aeb534f46;hb=4a8336156c820698be4933a3e36513750709926d;hp=090087817004ce648139d1068e48d66318fad715;hpb=d0e999102802c57e45b9d3a31261caca6ae691c3;p=spider.git diff --git a/perl/ExtMsg.pm b/perl/ExtMsg.pm index 09008781..cd18eb93 100644 --- a/perl/ExtMsg.pm +++ b/perl/ExtMsg.pm @@ -29,7 +29,7 @@ sub enqueue { my ($conn, $msg) = @_; unless ($msg =~ /^[ABZ]/) { - if ($msg =~ /^E[-\w]+\|([01])/) { + if ($msg =~ /^E[-\w]+\|([01])/ && $conn->{csort} eq 'telnet') { $conn->{echo} = $1; if ($1) { # $conn->send_raw("\xFF\xFC\x01"); @@ -71,9 +71,8 @@ sub dequeue } elsif ($conn->{state} eq 'WL' ) { $msg = uc $msg; if (is_callsign($msg)) { + &{$conn->{rproc}}($conn, "A$msg|telnet"); _send_file($conn, "$main::data/connected"); - $conn->{call} = $msg; - &{$conn->{rproc}}($conn, "A$conn->{call}|telnet"); $conn->{state} = 'C'; } else { $conn->send_now("Sorry $msg is an invalid callsign"); @@ -118,7 +117,7 @@ sub new_client { $conn->{state} = 'WL'; # $conn->send_raw("\xff\xfe\x01\xff\xfc\x01\ff\fd\x22"); # $conn->send_raw("\xff\xfa\x22\x01\x01\xff\xf0"); - $conn->send_raw("\xFF\xFC\x01"); +# $conn->send_raw("\xFF\xFC\x01"); _send_file($conn, "$main::data/issue"); $conn->send_raw("login: "); } else { @@ -131,12 +130,11 @@ sub start_connect my $call = shift; my $fn = shift; my $conn = ExtMsg->new(\&main::rec); - $conn->{call} = $call; + $conn->conns($call); my $f = new IO::File $fn; push @{$conn->{cmd}}, <$f>; $f->close; - push @main::outstanding_connects, {call => $call, conn => $conn}; $conn->_dotimeout($deftimeout); $conn->_docmd; } @@ -171,9 +169,6 @@ sub _docmd } last if $conn->{state} eq 'E'; } - unless (exists $conn->{cmd} && @{$conn->{cmd}}) { - @main::outstanding_connects = grep {$_->{call} ne $conn->{call}} @main::outstanding_connects; - } } sub _doconnect @@ -261,7 +256,6 @@ sub _timeout my $conn = shift; dbg('connect', "timed out after $conn->{timeval} seconds"); $conn->disconnect; - @main::outstanding_connects = grep {$_->{call} ne $conn->{call}} @main::outstanding_connects; } # handle callsign and connection type firtling