}
$From =~ s/^From: //;
-if( $From =~ m/([\w-\.]*)\@([\w-\.]+)/ ) {
- $From = "$1\@$2";
-} else {
+chomp $From;
+if( $From !~ m/([\w-\.]*)\@([\w-\.]+)/ || $From =~ m/\n/) {
print STDERR "From line `$From' is incorrect\n";
exit 0;
}
-if( !&nameIsInList( $From, "noack.list" ) ) { # need to preapprove
+if( !&nameIsInListExactly( $From, "noack.list" ) ) { # need to preapprove
print STDERR "Adding $From to the noack list...\n";
- open( NOACK, ">>$NoAckFile" );
- print NOACK "$From\n";
- close( NOACK );
+ open( NOACK, ">>$NoAckFile" ) or die $!;
+ print NOACK "$From\n" or die $!;
+ close( NOACK ) or die $!;
} else {
print STDERR "$From already is in noack list\n";
}