X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXProtHandle.pm;h=efc6c159abd5414d5c3aff2b67abe3195a634870;hb=400227d4bd709387099bf224b1c00a6f988c8196;hp=a6668a36db0daeef1752d86b796d4dcaf7d82e18;hpb=a2f8a91ca76dce4ec7649470d5fa1e2881682d42;p=spider.git diff --git a/perl/DXProtHandle.pm b/perl/DXProtHandle.pm index a6668a36..efc6c159 100644 --- a/perl/DXProtHandle.pm +++ b/perl/DXProtHandle.pm @@ -89,16 +89,6 @@ sub handle_10 return; } - # will we allow it at all? - if ($censorpc) { - my @bad; - if (@bad = BadWords::check($pc->[3])) { - my $bw = join ', ', @bad; - dbg($line) if isdbg('nologchan'); - dbg("PCPROT: Badwords: '$bw', dropped"); - return; - } - } # is it for me or one of mine? my ($from, $to, $via, $call, $dxchan); @@ -133,6 +123,17 @@ sub handle_10 return; } } + + # will we allow it at all? + if ($censorpc) { + my @bad; + if (@bad = BadWords::check($pc->[3])) { + my $bw = join ', ', @bad; + dbg($line) if isdbg('nologchan'); + dbg("PCPROT: Badwords: '$bw', dropped"); + return; + } + } # convert this to a PC93, coming from mycall with origin set and process it as such $main::me->normal(pc93($to, $from, $via, $pc->[3], $pc->[6])); @@ -213,10 +214,8 @@ sub handle_11 } # is it 'baddx' - if ($baddx->in($pc->[2]) || (my @bad = BadWords::check($pc->[2]))) { - my $bw = join ', ', @bad; - $bw = qq{ '$bw'} if $bw; - dbg("PCPROT: Bad DX spot$bw, ignored"); + if ($baddx->in($pc->[2])) { + dbg("PCPROT: Bad DX spot '$pc->[2]', ignored"); return; } @@ -227,15 +226,6 @@ sub handle_11 dbg("PCPROT: useless 'BUSTED' spot") if isdbg('chanerr'); return; } - if ($censorpc) { - my @bad; - if (@bad = BadWords::check($pc->[5])) { - my $bw = join ', ', @bad; - dbg($line) if isdbg('nologchan'); - dbg("PCPROT: Badwords: '$bw', dropped"); - return; - } - } my @spot = Spot::prepare($pc->[1], $pc->[2], $d, $pc->[5], $nossid, $pc->[7], $pc->[8]); @@ -334,6 +324,18 @@ sub handle_11 } } +# we until here to do any censorship to try and reduce the amount of noise that repeated copies +# from other connected nodes cause + if ($censorpc) { + my @bad; + if (@bad = BadWords::check($pc->[5])) { + my $bw = join ', ', @bad; + dbg($line) if isdbg('nologchan'); + dbg("PCPROT: Badwords: '$bw', dropped"); + return; + } + } + # If is a new PC11, store it, releasing the one that is there (if any), # if a PC61 comes along then dump the stored PC11 # If there is a different PC11 stored, release that one and store this PC11 instead, @@ -448,16 +450,6 @@ sub handle_12 # announce duplicate checking $pc->[3] =~ s/^\s+//; # remove leading blanks - if ($censorpc) { - my @bad; - if (@bad = BadWords::check($pc->[3])) { - my $bw = join ', ', @bad; - dbg($line) if isdbg('nologchan'); - dbg("PCPROT: Badwords: '$bw', dropped"); - return; - } - } - # if this is a 'nodx' node then ignore it if ($badnode->in($pc->[5])) { dbg($line) if isdbg('nologchan'); @@ -481,6 +473,17 @@ sub handle_12 return; } + if ($censorpc) { + my @bad; + if (@bad = BadWords::check($pc->[3])) { + my $bw = join ', ', @bad; + dbg($line) if isdbg('nologchan'); + dbg("PCPROT: Badwords: '$bw', dropped"); + return; + } + } + + my $dxchan; if ((($dxchan = DXChannel::get($pc->[2])) && $dxchan->is_user) || $pc->[4] =~ /^[\#\w.]+$/){ @@ -2268,17 +2271,6 @@ sub handle_93 my $s = "ANNTALK: $from\@$onode$vs -> $to '$text' route: $origin"; dbg($s); } - - # will we allow it at all? - if ($censorpc) { - my @bad; - if (@bad = BadWords::check($text)) { - my $bw = join ', ', @bad; - dbg($line) if isdbg('nologchan'); - dbg("PCPROT: Badwords: '$bw', dropped"); - return; - } - } # if this is a 'bad spotter' user then ignore it my $nossid = $from; @@ -2295,6 +2287,17 @@ sub handle_93 return; } + # will we allow it at all? + if ($censorpc) { + my @bad; + if (@bad = BadWords::check($text)) { + my $bw = join ', ', @bad; + dbg($line) if isdbg('nologchan'); + dbg("PCPROT: Badwords: '$bw', dropped"); + return; + } + } + # if it is routeable then then treat it like a talk my $ref = Route::get($to); if ($ref) {