--- contrib/sequencer-original Tue Dec 10 01:50:48 1996 +++ contrib/sequencer Sat Sep 12 16:17:18 1998 @@ -17,6 +17,8 @@ # from majordomo # # Based heavily upon the resend script included in the majordomo distribution +use IM::Config; +use IM::EncDec; # set our path explicitly $ENV{'PATH'} = "/bin:/usr/bin:/usr/sbin:/sbin"; @@ -196,7 +198,7 @@ } } $subject = $foo . "Message for " . $opt_l; - print OUT $subject, "\n"; + print OUT "Subject: ", $subject, "\n"; } print OUT "Sender: $sender\n"; @@ -212,6 +214,7 @@ if ( $config_opts{$opt_l,"message_headers"} ne '' ) { local($headers) = &config'substitute_values ( $config_opts{$opt_l,"message_headers"}, $opt_l); + $headers =~ s/\$SEQNUM/$seqnum/; $headers =~ s/\001/\n/g; print OUT $headers; } @@ -262,23 +265,32 @@ } # prepend subject prefix - if ( (/^subject:\s*/i) && - ($config_opts{$opt_l,"subject_prefix"} ne '') - ) { + if (/^subject:\s*/i) { local($foo) = &config'substitute_values( $config_opts{$opt_l,"subject_prefix"}, $opt_l); + if ($config_opts{$opt_l,"subject_prefix"} ne '') { # for sequencing we add a special keyword! if (defined($opt_n)) { $foo =~ s/\$SEQNUM/$seqnum/; } + } $subject = $_; $subject =~ s/^subject:\s*(.*)/$1/i; $subject = &chop_nl($foo . " " . $subject); local($foo_pat) = $foo; $foo_pat =~ s/(\W)/\\$1/g; s/^subject:\s*/Subject: $foo /i if !/$foo_pat/; + s/R[eE]\:.*[\(\[]\w+\W*\d+[\)\]]/Re\:/; + s/R[eE]\:\s+R[eE]\:/Re\:/g; + + $subject_last = 1 ; } + elsif ( defined($subject_last) ) { + if ( /^\s+(.+)/ ) { + $subject .= " $1";} + else { + undef($subject_last);}} if ( /^from:\s*(.+)/i ) { $from = $1; @@ -421,7 +433,10 @@ if (defined($opt_N)) { if (open (INDEX, ">>$filedir/$opt_l$filedir_suffix/INDEX")) { $timenow = localtime(time); - printf(INDEX "%s\n\tFrom %s on %s\n", $subject, $from, $timenow); + $decoded_subject = mime_decode_string($subject); + $decoded_from = mime_decode_string($from); + printf(INDEX "%5d %s\n\tFrom %s on %s\n", + $seqnum, $decoded_subject, $decoded_from, $timenow); close (INDEX); } open (ARCHIVE, ">$filedir/$opt_l$filedir_suffix/$seqnum"); --- ../majordomo-1.94.4/config_parse.pl Wed Aug 27 23:41:32 1997 +++ ./config_parse.pl Wed Oct 29 12:50:07 1997 @@ -523,6 +523,7 @@ 'digest_maxdays', 'grab_integer', # general stuff below 'comments', 'grab_string_array', + 'seqnum', 'grab_enum', );