X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=cmd%2Fshow%2Fdb0sdx.pl;h=64c6f3bfdf585534d552a6ffbdb0717c6eabfa30;hb=e2ca7811e49048bfad82ec31e148a79fe9904e2b;hp=5132b2f9fd3a8c1c0e97f522497a2b71180473d0;hpb=8bb293d5a1ca7a53f2ce50bd8e9e728865069b7f;p=spider.git diff --git a/cmd/show/db0sdx.pl b/cmd/show/db0sdx.pl index 5132b2f9..64c6f3bf 100644 --- a/cmd/show/db0sdx.pl +++ b/cmd/show/db0sdx.pl @@ -13,21 +13,23 @@ sub on_disc my $conn = shift; my $dxchan = shift; my @out; + +# $DB::single = 1; - $conn->{sdxin} .= $conn->{msg}; # because there will be stuff left in the rx buffer because it isn't \n terminated dbg("db0sdx in: $conn->{sdxin}") if isdbg('db0sdx'); my ($info) = $conn->{sdxin} =~ m|([^<]*)|; - dbg("info: $info"); +# dbg("db0sdx info: $info"); + my $prefix = $conn->{prefix} || ''; my @in = split /[\r\n]/, $info if $info; if (@in && $in[0]) { - dbg("in qsl"); - push @out, @in; +# dbg("db0sdx: in qsl"); + push @out, map {"$prefix$_"} @in; } else { - dbg("in fault"); +# dbg("db0sdx: in fault"); ($info) = $conn->{sdxin} =~ m|([^<]*)|; - push @out, $info if $info; + push @out, "$prefix$info" if $info; push @out, $dxchan->msg('e3', 'DB0SDX', $conn->{sdxline}) unless @out; } $dxchan->send(@out); @@ -38,6 +40,8 @@ sub process my $conn = shift; my $msg = shift; +# $DB::single = 1; + $conn->{sdxin} .= "$msg\n"; dbg("db0sdx in: $conn->{sdxin}") if isdbg('db0sdx'); @@ -68,10 +72,11 @@ sub handle ); - my $lth = length($s)+1; +# $s .= "\n"; + my $lth = length($s); Log('call', "$call: show/db0sdx $line"); - my $conn = AsyncMsg->post($self, $target, $port, "$path$suffix", prefix => 'sdx> ', filter => \&process, + my $conn = AsyncMsg->post($self, $target, "$path$suffix", prefix => 'sdx> ', filter => \&process, 'Content-Type' => 'text/xml; charset=utf-8', 'Content-Length' => $lth, Connection => 'Close', @@ -80,7 +85,7 @@ sub handle on_disc => \&on_disc); if ($conn) { - $conn->{sdxcall} = $line; + $conn->{sdxline} = $line; push @out, $self->msg('m21', "show/db0sdx"); } else { push @out, $self->msg('e18', 'DB0SDX Database server');