use strict; package Blacklist; sub get_black_list_rx { my ($fname) = @_; my @tmp = (); open FH, $fname or warn("no blacklist file $fname\n"), return; while() { s/^\s*//; s/\s*$//; $_ or next; push @tmp, quotemeta($_); } return join '|', @tmp; } sub do_check_if_block { my $rx = shift; my $s; foreach $s (@_) { return 1 if $s =~ /$rx/i; } return 0; } sub check_in_blacklist { my $fname = shift; my $rx = get_black_list_rx $fname; return 0 if ! $rx; return do_check_if_block $rx, @_; } 1;