# checks if poster needs acknowledgment of receipt
#
sub checkAck {
- if( &nameIsInList( $From, "noack.list" ) ) {
+ if( &nameIsInListExactly( $From, "noack.list" ) ) {
$needAck = "no";
} else {
$needAck = "yes";
return "$Command_Reject signature Your PGP signature does NOT match, or is not in our keyring";
}
- if( &nameIsInList( $From, $PGPMustList ) ||
- ($PGPCheckPreapproved && &nameIsInList($From, $goodGuys) ) ) {
+ if( &nameIsInListRegexp( $From, $PGPMustList ) ||
+ ($PGPCheckPreapproved && &nameIsInListExactly($From, $goodGuys) ) ) {
if( $FromSig eq "" ) {
return "$Command_Reject signature You are REQUIRED to sign your posts.";
}
# checks charter calling conforms_charter
#
sub checkCharter {
- open( VERIFY, "|conforms_charter" );
- print VERIFY $Body;
+ open( VERIFY, "|conforms_charter" ) or die $!;
+ print VERIFY $Body or die $!;
close( VERIFY );
return $? == 0;
}
}
- if( &nameIsInList( $From, $badGuys ) ) {
- return "$Command_Reject abuse";
+ if( &nameIsInListRegexp( $From, $badGuys ) ) {
+ return "$Command_Reject blocklist";
}
# note that if even a preapproved person uses "BAD words" (that is
# "suspicious" and will be forwarded to a humen mod for review.
# As an example of a bad word may be "MAKE MONEY FAST - IT REALLY WORKS!!!"
#
- if( $badWord = &nameIsInList( $Body, $badWords ) ) {
+ if( $badWord = &nameIsInListRegexp( $Body, $badWords ) ) {
print STDERR "BAD WORD $badWord FOUND!!!\n";
return $Command_Suspicious; # messages from approved guys MAY be
# suspicious if they write about
}
# Checking preapproved list
- if( &nameIsInList( $From, $goodGuys ) ) {
+ if( &nameIsInListExactly( $From, $goodGuys ) ) {
local( $from ) = $From; $from =~ s/^From: //i;
print STDERR "$from is a PREAPPROVED person\n";
return $Command_Approve;
sub readMessage {
-open IWJL, ">>/home/webstump/t.log";
-print IWJL "=========== SUBMISSION READMESSAGE\n";
+#open IWJL, ">>/home/webstump/t.log";
+#print IWJL "=========== SUBMISSION READMESSAGE\n";
- open( TMPFILE, "> $TmpFile" );
+ open( TMPFILE, "> $TmpFile" ) or die $!;
$IsBody = 0;
while( <> ) {
-print IWJL "SbRm $_\n";
+#print IWJL "SbRm $_\n";
$Body .= $_;
if( !$IsBody && &ignoreHeader( $_ ) ) {
next;
}
- print TMPFILE;
+ print TMPFILE or die $!;
chop;
}
}
use IO::Handle;
- print IWJL "SbRmE $!\n";
+# print IWJL "SbRmE $!\n";
die "read message $! !" if STDIN->error;
close( TMPFILE );
# process
print STDERR "command = $command\n";
-open IWJL, ">>/home/webstump/t.log";
-print IWJL "=========== SUBMISSION MAIN\n";
+#open IWJL, ">>/home/webstump/t.log";
+#print IWJL "=========== SUBMISSION MAIN\n";
open( COMMAND, "| $command" ) or die $!;
open( TMPFILE, "$TmpFile" ) || die "cant open tmpfile";
}
if( /^From / ) {
- print COMMAND;
- print COMMAND "X-Origin: $X_Origin, $_" if $X_Origin;
+ print COMMAND or die $!;
+ print COMMAND "X-Origin: $X_Origin, $_" or die $! if $X_Origin;
print STDERR "Subject =`$Subject'\n";
- print COMMAND "Subject: No subject given\n" if !$Subject;
+ print COMMAND "Subject: No subject given\n" or die $! if !$Subject;
# nothing
} elsif( /^From: / && !$IsBody) {
next if $FromWasUsed;
# "From: " to go to headers!
if( $From ) {
- print COMMAND "$From\n";
+ print COMMAND "$From\n" or die $!;
$From = "";
} else {
- print COMMAND;
+ print COMMAND or die $!;
}
} elsif( /^Newsgroups: / && !$IsBody ) {
- print COMMAND "Newsgroups: $Newsgroups\n";
+ print COMMAND "Newsgroups: $Newsgroups\n" or die $!;
} else {
- print COMMAND;
+ print COMMAND or die $!;
}
}
close( TMPFILE ) or die $!;
-close( COMMAND ) or die $!;
+close( COMMAND ) or die "$? $!";
################################################################## Archiving
# archive