From 61cdf7dc2b72c1898850a4d2aa403d712f22f8ee Mon Sep 17 00:00:00 2001 From: djk Date: Sun, 3 Jan 1999 16:26:57 +0000 Subject: [PATCH] 1. Upped the version no !!!! 2. made the DXProtocol routines much less sensitive to '~' characters (JE1SGH) 3. added '^' -> ':' conversions on ann, talk and dx commands 4. You can now send messages containing blank lines. 5. Fixed merge command problem reported by G0RDI --- Changes | 6 ++++++ cmd/announce.pl | 3 +++ cmd/dx.pl | 3 +++ cmd/merge.pl | 2 +- cmd/talk.pl | 3 +++ perl/DXCommandmode.pm | 4 +++- perl/DXProt.pm | 5 ++++- perl/cluster.pl | 2 +- 8 files changed, 24 insertions(+), 4 deletions(-) diff --git a/Changes b/Changes index d083a17b..c1f2f0e0 100644 --- a/Changes +++ b/Changes @@ -1,3 +1,9 @@ +03Jan99======================================================================== +1. Upped the version no !!!! +2. made the DXProtocol routines much less sensitive to '~' characters (JE1SGH) +3. added '^' -> ':' conversions on ann, talk and dx commands +4. You can now send messages containing blank lines. +5. Fixed merge command problem reported by G0RDI 28Dec98======================================================================== 1. Crossed fingers, got rid of the instabilities caused by execing programs at vast speed (reduced it significantly anyway). diff --git a/cmd/announce.pl b/cmd/announce.pl index 6c66bcd0..bb5f7ad0 100644 --- a/cmd/announce.pl +++ b/cmd/announce.pl @@ -43,6 +43,9 @@ if ($sort eq "FULL") { $to = "LOCAL"; } +# change ^ into : for transmission +$line =~ s/\^/:/og; + Log('ann', $to, $from, $line); DXProt::broadcast_list("To $to de $from <$t>: $line", @locals); if ($to ne "LOCAL") { diff --git a/cmd/dx.pl b/cmd/dx.pl index 763bf9b0..66458562 100644 --- a/cmd/dx.pl +++ b/cmd/dx.pl @@ -77,6 +77,9 @@ if ($spotted le ' ') { return (1, @out) if !$valid; +# change ^ into : for transmission +$line =~ s/\^/:/og; + # Store it here if (Spot::add($freq, $spotted, $main::systime, $line, $spotter)) { # send orf to the users diff --git a/cmd/merge.pl b/cmd/merge.pl index 51620b60..412ddccf 100644 --- a/cmd/merge.pl +++ b/cmd/merge.pl @@ -20,7 +20,7 @@ return (1, $self->msg('e10', $call)) unless $ref; return (1, $self->msg('e13', $call)) unless $ref->isa('DXNode'); -my ($spots, $wwv) = $f[1] =~ m{(\d+/\d+)} if $f[1]; +my ($spots, $wwv) = $f[1] =~ m{(\d+)/(\d+)} if $f[1]; $spots = 10 unless $spots; $wwv = 5 unless $wwv; diff --git a/cmd/talk.pl b/cmd/talk.pl index 899a4430..e94fd025 100644 --- a/cmd/talk.pl +++ b/cmd/talk.pl @@ -37,6 +37,9 @@ unless ($ref || $via) { } return (1, "$call not visible on the cluster") if !$ref; +# change ^ into : for transmission +$line =~ s/\^/:/og; + my $dxchan = DXCommandmode->get($to); # is it for us? if ($dxchan && $dxchan->is_user) { $dxchan->send("$to de $from $line"); diff --git a/perl/DXCommandmode.pm b/perl/DXCommandmode.pm index de591606..b9d8e6cf 100644 --- a/perl/DXCommandmode.pm +++ b/perl/DXCommandmode.pm @@ -130,7 +130,7 @@ sub normal $self->state('prompt'); } } else { - @ans = run_cmd($self, $cmdline) if length $cmdline; + @ans = run_cmd($self, $cmdline); # if length $cmdline; if ($self->{pagelth} && @ans > $self->{pagelth}) { my $i; @@ -175,6 +175,8 @@ sub run_cmd return (1, "Syserr: Eval err $errstr on stored func $self->{func}"); } } else { + + return () if length $cmdline == 0; # strip out // $cmdline =~ s|//|/|og; diff --git a/perl/DXProt.pm b/perl/DXProt.pm index eb3933ea..01b64372 100644 --- a/perl/DXProt.pm +++ b/perl/DXProt.pm @@ -120,8 +120,11 @@ sub start sub normal { my ($self, $line) = @_; - my @field = split /[\^\~]/, $line; + my @field = split /\^/, $line; + pop @field if $field[-1] eq '~'; +# print join(',', @field), "\n"; + # ignore any lines that don't start with PC return if !$field[0] =~ /^PC/; diff --git a/perl/cluster.pl b/perl/cluster.pl index 706ee548..49bd016c 100755 --- a/perl/cluster.pl +++ b/perl/cluster.pl @@ -52,7 +52,7 @@ package main; @inqueue = (); # the main input queue, an array of hashes $systime = 0; # the time now (in seconds) -$version = "1.17"; # the version no of the software +$version = "1.20"; # the version no of the software $starttime = 0; # the starting time of the cluster # handle disconnections -- 2.43.0