Allow synonyms for localhost
[spider.git] / perl / DXMsg.pm
index e6662b59472fce0d46e8496235f3c52f271133e4..a3b5e983586ed9a9fdab49eac489323660813646 100644 (file)
@@ -66,30 +66,30 @@ $importfn = "$msgdir/import";       # import directory
 
 
 %valid = (
-                 fromnode => '5,From Node',
-                 tonode => '5,To Node',
-                 to => '0,To',
-                 from => '0,From',
-                 t => '0,Msg Time,cldatetime',
-                 private => '5,Private,yesno',
-                 subject => '0,Subject',
-                 linesreq => '0,Lines per Gob',
-                 rrreq => '5,Read Confirm,yesno',
-                 origin => '0,Origin',
-                 lines => '5,Data',
-                 stream => '9,Stream No',
+                 'read' => '5,Times read',
                  count => '5,Gob Linecnt',
+                 delete => '5,Awaiting Delete,yesno',
+                 deletetime => '5,Deletion Time,cldatetime',
                  file => '5,File?,yesno',
+                 from => '0,From',
+                 fromnode => '5,From Node',
                  gotit => '5,Got it Nodes,parray',
-                 lines => '5,Lines,parray',
-                 'read' => '5,Times read',
-                 size => '0,Size',
-                 msgno => '0,Msgno',
                  keep => '0,Keep this?,yesno',
                  lastt => '5,Last processed,cldatetime',
+                 lines => '5,Data',
+                 lines => '5,Lines,parray',
+                 linesreq => '0,Lines per Gob',
+                 msgno => '0,Msgno',
+                 origin => '0,Origin',
+                 private => '5,Private,yesno',
+                 rrreq => '5,Read Confirm,yesno',
+                 size => '0,Size',
+                 stream => '9,Stream No',
+                 subject => '0,Subject',
+                 t => '0,Msg Time,cldatetime',
+                 to => '0,To',
+                 tonode => '5,To Node',
                  waitt => '5,Wait until,cldatetime',
-                 delete => '5,Awaiting Delete,yesno',
-                 deletetime => '5,Deletion Time,cldatetime',
                 );
 
 # fix up the default sendmail if available
@@ -216,7 +216,7 @@ sub handle_29
        
        my $ref = get_fwq($fromnode, $stream);
        if ($ref) {
-               $_[4] =~ s/\%5E/^/g;
+               $_[4] =~ s/\%5E/~/g;
                if (@{$ref->{lines}}) {
                        push @{$ref->{lines}}, $_[4];
                } else {
@@ -786,6 +786,8 @@ sub queue_msg
                                if ($dxchan) {
                                        if ($dxchan->is_node) {
                                                next if $clref->call eq $main::mycall;  # i.e. it lives here
+                                               next if $dxchan->is_arcluster;                  # don't even go there, idiot people send the header in the wrong order and won't/can't fix it
+                                               next if $dxchan->isolate;                               # there is no mechanism for sending messages to isolated nodes. 
                                                $ref->start_msg($dxchan) if !get_busy($dxchan->call)  && $dxchan->state eq 'normal';
                                        }
                                } else {
@@ -804,8 +806,10 @@ sub queue_msg
                                next unless $call;
                                next if $call eq $main::mycall;
                                next if ref $ref->{gotit} && grep $_ eq $call, @{$ref->{gotit}};
-                               next unless $ref->forward_it($call);           # check the forwarding file
-                               next if $ref->{tonode};           # ignore it if it already being processed
+                               next unless $ref->forward_it($call);    # check the forwarding file
+                               next if $ref->{tonode};                 # ignore it if it already being processed
+                               next if $dxchan->is_arcluster;                  # don't even go there, idiot people send the header in the wrong order and won't/can't fix it
+                               next if $dxchan->isolate;                               # there is no mechanism for sending messages to isolated nodes. 
                                
                                # if we are here we have a node that doesn't have this message
                                if (!get_busy($call)  && $dxchan->state eq 'normal') {