-sub recipient_specified {
- my ($filter, $recipient) = @_;
- defined($recipient) or return 1; # for mass imports
- my @recip = Email::Address->parse($recipient);
- my $oaddr = __drop_plus($recip[0]->address);
- $oaddr = qr/\b\Q$oaddr\E\b/i;
- my @to = Email::Address->parse($filter->to);
- my @cc = Email::Address->parse($filter->cc);
- foreach my $addr (@to, @cc) {
- if (__drop_plus($addr->address) =~ $oaddr) {
- return 1;
+sub alias_specified {
+ my ($simple, $address) = @_;
+
+ my @address = ref($address) eq 'ARRAY' ? @$address : ($address);
+ my %ok = map {
+ lc(__drop_plus($_)) => 1;
+ } @address;
+
+ foreach my $line ($simple->header('Cc'), $simple->header('To')) {
+ my @addrs = ($line =~ /([^,<\s]+\@[^,>\s]+)/g);
+ foreach my $addr (@addrs) {
+ if ($ok{lc(__drop_plus($addr))}) {
+ return 1;
+ }