11 $dir =~ s,/bin$,/log,;
16 sub parse__headerline () {
17 $f{Subject}= $' if m/^Subject:\s*/i; #';
18 $f{MessageID}= $' if m/^Message\-ID:\s*/i; #';
19 $f{From}= $' if m/^From:\s*/i; #';
21 sub parse__stumpsubject () {
22 $f{MessageNum}=$1 if m/^Subject:.*\:\:\w+\/(\d+)$/i;
33 sub parse_submission () {
37 $hadng++ if m/^Newsgroups:/i;
47 sub parse_stump2webstump () {
50 parse__stumpsubject() unless exists $f{'MessageNum'};
61 sub parse_webstump2stump () {
64 parse__stumpsubject();
69 next unless m/^reject|^approve|^preapprove/;
75 sub parse_mailout () {
78 $keepheader= 1 unless m/^[ \t]/;
80 if m/^(?: received )/ix;
90 $line =~ s/\@.{0,2}/ at ../g if $keepheader eq 'mangle';
94 $f{Event}= "notify $'" if m/^X-Webstump-Event:\s*/i; #';
100 next unless s/^\> //;
108 while (<STDIN>) { $message .= $_; }
109 STDIN->error and die $!;
113 if ($f{Event} =~ m/^notify reject /) {
115 open I, ">$dir/nr-$f{MessageNum}.txt" or die $!;
116 print I $message or die $!;
120 open L, ">>$dir/event.log" or die $!;
124 $v= '' unless defined $v;
128 } qw(Now MessageNum MessageID From Subject Event);
130 print L join("\t",@s)."\n" or die $!;