fix a few typos
authorminima <minima>
Thu, 22 Mar 2001 22:15:11 +0000 (22:15 +0000)
committerminima <minima>
Thu, 22 Mar 2001 22:15:11 +0000 (22:15 +0000)
Changes
perl/DXCommandmode.pm
perl/DXProt.pm
perl/ExtMsg.pm

diff --git a/Changes b/Changes
index 2f81542db516afd3b783ac4940adc8bb8f66faf9..37ada6af131911b7b2dce595a5b21488083ab651 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,6 +1,9 @@
 22Mar01=======================================================================
 1. edit the helpfile for set/debug and add help for show/debug
 2. Allow ^Z again on messages
+3. Added back onboard support for ax25 OUTBOUND connections. You will need
+exactly the same facilities as before (ie netrom_call, ax25_call suid root 
+etc) but it is called direct from the cluster.pl - client.pl is DEAD!
 19Mar01=======================================================================
 1. Add 'not allowed' messages into sh/filter with callsign and reduce priv
 2. decode %xx characters in winclient.pl
index 197288d5249d84cf957f65b0dce901e11b11d164..6e7a0944f5461c109d9b4a5d6a5106ba2092515b 100644 (file)
@@ -30,7 +30,6 @@ use AnnTalk;
 use WCY;
 use Sun;
 use Internet;
-use IO::File;
 
 use strict;
 use vars qw(%Cache %cmd_cache $errstr %aliases $scriptbase);
index 6bdb85cf617d08be72d155af7911c572544b3474..b0e7b969edf2b07fd05100e77b8be5b658b325e6 100644 (file)
@@ -565,6 +565,8 @@ sub normal
                        
                        # queue up any messages (look for privates only)
                        DXMsg::queue_msg(1) if $self->state eq 'normal';     
+#                      broadcast_route($line, $self, $field[1]);
+#                      return;
                        last SWITCH;
                }
                
@@ -613,6 +615,8 @@ sub normal
                                dbg('chan', "PCPROT: $field[1] not known" );
                                return;
                        }
+#                      broadcast_route($line, $self, $field[2]);
+#                      return;
                        last SWITCH;
                }
                
@@ -731,6 +735,8 @@ sub normal
                                dbg('chan', "PCPROT: I WILL _NOT_ be disconnected!");
                                return;
                        }
+#                      broadcast_route($line, $self, $call);
+#                      return;
                        last SWITCH;
                }
                
@@ -1148,6 +1154,39 @@ sub process
 #
 # some active measures
 #
+sub send_route
+{
+       my $self = shift;
+       my $line = shift;
+       my @dxchan = DXChannel::get_all_nodes();
+       my $dxchan;
+       
+       # send it if it isn't the except list and isn't isolated and still has a hop count
+       # taking into account filtering and so on
+       foreach $dxchan (@dxchan) {
+               my $routeit;
+               my ($filter, $hops);
+
+               if ($dxchan->{routefilter}) {
+                       ($filter, $hops) = $dxchan->{routefilter}->it($self->{call}, @_);
+                        next unless $filter;
+               }
+               next if $dxchan == $self;
+               if ($hops) {
+                       $routeit = $line;
+                       $routeit =~ s/\^H\d+\^\~$/\^H$hops\^\~/;
+               } else {
+                       $routeit = adjust_hops($dxchan, $line);  # adjust its hop count by node name
+                       next unless $routeit;
+               }
+               if ($filter) {
+                       $dxchan->send($routeit) if $routeit;
+               } else {
+                       $dxchan->send($routeit) unless $dxchan->{isolate} || $self->{isolate};
+               }
+       }
+}
+
 sub send_dx_spot
 {
        my $self = shift;
index e181722d1ba36d0d9f614bcdaa894ca017250ef6..838c74e122460dfae490b6737727dec32590be99 100644 (file)
@@ -70,7 +70,7 @@ sub dequeue
                        } 
                }
                if ($conn->{state} eq 'WC' && exists $conn->{cmd} && @{$conn->{cmd}} == 0) {
-                       $conn->to_connected($conn->{call}, 'O', $conn->{sort});
+                       $conn->to_connected($conn->{call}, 'O', $conn->{csort});
                }
        } elsif ($conn->{msg} =~ /\cJ/) {
                my @lines =  $conn->{msg} =~ /([^\cM\cJ]*)\cM?\cJ/g;
@@ -90,7 +90,7 @@ sub dequeue
                        } elsif ($conn->{state} eq 'WL' ) {
                                $msg = uc $msg;
                                if (is_callsign($msg)) {
-                                       $conn->to_connected($msg, 'A', 'telnet');
+                                       $conn->to_connected($msg, 'A', $conn->{csort});
                                } else {
                                        $conn->send_now("Sorry $msg is an invalid callsign");
                                        $conn->disconnect;
@@ -99,7 +99,7 @@ sub dequeue
                                if (exists $conn->{cmd} && @{$conn->{cmd}}) {
                                        $conn->_docmd($msg);
                                        if ($conn->{state} eq 'WC' && exists $conn->{cmd} &&  @{$conn->{cmd}} == 0) {
-                                               $conn->to_connected($conn->{call}, 'O', $conn->{sort});
+                                               $conn->to_connected($conn->{call}, 'O', $conn->{csort});
                                        }
                                }
                        }