From: minima Date: Fri, 24 Aug 2001 22:04:12 +0000 (+0000) Subject: allow someone to reject msgs from an interface call X-Git-Tag: R_1_48~81 X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=48d614dae214326305879ac572d8c5f0a6150f99;p=spider.git allow someone to reject msgs from an interface call --- diff --git a/Changes b/Changes index 862bb961..ea6a1c7a 100644 --- a/Changes +++ b/Changes @@ -1,3 +1,5 @@ +24Aug01======================================================================= +1. Allow badmsg to reject on interface callsign ('I') 20Aug01======================================================================= 1. protect against PC41s with field[3] == field[2] 2. Redo Julian stuff as proper objects diff --git a/msg/badmsg.pl.issue b/msg/badmsg.pl.issue index 3b13e3bf..2e127c8c 100644 --- a/msg/badmsg.pl.issue +++ b/msg/badmsg.pl.issue @@ -7,10 +7,10 @@ # The format of each line is as follows # # type source pattern -# P/B/F T/F/O/S regex +# P/B/F T/F/O/S/I regex # # type: P - private, B - bulletin (msg), F - file (ak1a bull) -# source: T - to field, F - from field, O - origin, S - subject +# source: T - to field, F - from field, O - origin, S - subject, I - interface call # pattern: a perl regex on the field requested # # Currently only type B and P msgs are affected by this code. diff --git a/perl/DXMsg.pm b/perl/DXMsg.pm index f136b16e..f3c2172c 100644 --- a/perl/DXMsg.pm +++ b/perl/DXMsg.pm @@ -284,7 +284,7 @@ sub process $ref->swop_it($self->call); # look for 'bad' to addresses - if ($ref->dump_it) { + if ($ref->dump_it($self->call)) { $ref->stop_msg($self->call); dbg("'Bad' message $ref->{to}") if isdbg('msg'); Log('msg', "'Bad' message $ref->{to}"); @@ -777,7 +777,7 @@ sub init } # delete any messages to 'badmsg.pl' places - if ($ref->dump_it) { + if ($ref->dump_it('')) { dbg("'Bad' TO address $ref->{to}") if isdbg('msg'); Log('msg', "'Bad' TO address $ref->{to}"); $ref->del_msg; @@ -992,6 +992,7 @@ sub forward_it sub dump_it { my $ref = shift; + my $call = shift; my $i; for ($i = 0; $i < @badmsg; $i += 3) { @@ -1007,6 +1008,7 @@ sub dump_it $tested = $ref->{from} if $field eq 'F'; $tested = $ref->{origin} if $field eq 'O'; $tested = $ref->{subject} if $field eq 'S'; + $tested = $call if $field eq 'I'; if (!$pattern || $tested =~ m{$pattern}i) { return 1;