We used this to create an array of header information: if (open(IN, '<', './HEADERS')) { while(<IN>) { chomp; if (/^(\S+):\s*(.*)/) { my $label = $1; my $data = $2; $label = lc($label); $Header{$label} = $data; if ($label eq 'received') { push(@Received,$data); } } close(IN); }
So following this, if for example we want to test the From: header, we check $Header{'from'} Received: was handled specially. It could end up an empty list. I don't think we checked for that! Hmm... If HEADERS was not there (??) it fails silently and $Header{'anything'} is empty. The rest of filter still works, but maybe we should have logged that case. -- Joseph Brennan Lead, Email and Systems Applications Columbia University Information Technology _______________________________________________ NOTE: If there is a disclaimer or other legal boilerplate in the above message, it is NULL AND VOID. You may ignore it. Visit http://www.mimedefang.org and http://www.roaringpenguin.com MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com http://lists.roaringpenguin.com/mailman/listinfo/mimedefang