projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
prioritise PC61 over PC11
[spider.git]
/
perl
/
DXMsg.pm
diff --git
a/perl/DXMsg.pm
b/perl/DXMsg.pm
index fe65cdb3b204667d1931113c4036f6583fcd56a8..174a98a4792697ee7513f8298c03e7710b97d671 100644
(file)
--- a/
perl/DXMsg.pm
+++ b/
perl/DXMsg.pm
@@
-4,7
+4,7
@@
#
# Copyright (c) 1998 Dirk Koopman G1TLH
#
#
# Copyright (c) 1998 Dirk Koopman G1TLH
#
-#
$Id$
+#
#
#
# Notes for implementors:-
#
#
# Notes for implementors:-
@@
-32,12
+32,6
@@
eval {
use strict;
use strict;
-use vars qw($VERSION $BRANCH);
-$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
-$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ || (0,0));
-$main::build += $VERSION;
-$main::branch += $BRANCH;
-
use vars qw(%work @msg $msgdir %valid %busy $maxage $last_clean $residencetime
@badmsg @swop $swopfn $badmsgfn $forwardfn @forward $timeout $waittime
$email_server $email_prog $email_from
use vars qw(%work @msg $msgdir %valid %busy $maxage $last_clean $residencetime
@badmsg @swop $swopfn $badmsgfn $forwardfn @forward $timeout $waittime
$email_server $email_prog $email_from
@@
-130,7
+124,7
@@
sub alloc
$self->{gotit} = [];
# $self->{lastt} = $main::systime;
$self->{lines} = [];
$self->{gotit} = [];
# $self->{lastt} = $main::systime;
$self->{lines} = [];
- $self->{private} = 1 if $bulltopriv && DXUser
->
get_current($self->{to});
+ $self->{private} = 1 if $bulltopriv && DXUser
::
get_current($self->{to});
return $self;
}
return $self;
}
@@
-206,7
+200,7
@@
sub handle_28
$ref->{lastt} = $main::systime;
# look to see whether this is a non private message sent to a known callsign
$ref->{lastt} = $main::systime;
# look to see whether this is a non private message sent to a known callsign
- my $uref = DXUser
->
get_current($ref->{to});
+ my $uref = DXUser
::
get_current($ref->{to});
if (is_callsign($ref->{to}) && !$ref->{private} && $uref && $uref->homenode) {
$ref->{private} = 1;
dbg("set bull to $ref->{to} to private") if isdbg('msg');
if (is_callsign($ref->{to}) && !$ref->{private} && $uref && $uref->homenode) {
$ref->{private} = 1;
dbg("set bull to $ref->{to} to private") if isdbg('msg');
@@
-222,7
+216,7
@@
sub handle_29
my $ref = get_fwq($fromnode, $stream);
if ($ref) {
my $ref = get_fwq($fromnode, $stream);
if ($ref) {
- $_[4] =~ s/\%5E/
^
/g;
+ $_[4] =~ s/\%5E/
~
/g;
if (@{$ref->{lines}}) {
push @{$ref->{lines}}, $_[4];
} else {
if (@{$ref->{lines}}) {
push @{$ref->{lines}}, $_[4];
} else {
@@
-482,7
+476,7
@@
sub notify
{
my $ref = shift;
my $to = $ref->{to};
{
my $ref = shift;
my $to = $ref->{to};
- my $uref = DXUser
->
get_current($to);
+ my $uref = DXUser
::
get_current($to);
my $dxchan = DXChannel::get($to);
if (((*Net::SMTP && $email_server) || $email_prog) && $uref && $uref->wantemail) {
my $email = $uref->email;
my $dxchan = DXChannel::get($to);
if (((*Net::SMTP && $email_server) || $email_prog) && $uref && $uref->wantemail) {
my $email = $uref->email;
@@
-792,6
+786,8
@@
sub queue_msg
if ($dxchan) {
if ($dxchan->is_node) {
next if $clref->call eq $main::mycall; # i.e. it lives here
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 {
$ref->start_msg($dxchan) if !get_busy($dxchan->call) && $dxchan->state eq 'normal';
}
} else {
@@
-810,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 $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') {
# if we are here we have a node that doesn't have this message
if (!get_busy($call) && $dxchan->state eq 'normal') {