У меня так:=== master.cf: ===
smtp inet n - y - 12 smtpd
-o content_filter=add-date:dummy
add-date unix - n n - 20 pipe
flags=Rq user=nobody argv=/usr/libexec/postfix/add-date.pl
-f ${sender} -- ${recipient}
=== add-date.pl: ===
#!/usr/bin/perl -w
use POSIX qw(setlocale LC_ALL strftime);
POSIX::setlocale( LC_ALL, "C" );
my $SENDMAIL="/usr/sbin/sendmail -G -i @ARGV"; # NEVER NEVER NEVER use "-t" here.
#open (PIPE, "> /tmp/add-date.txt");
my $line;
my $date_changed_flag=0;
my $blank_line_flag=0;
my $current_date=POSIX::strftime("%a, %d %b %Y %H:%M:%S %z", ( localtime(time()) ));
open (PIPE, " | $SENDMAIL");
while ($line=<STDIN>) {
$blank_line_flag=1 if $line=~m/^\r?\n$/;
if ($blank_line_flag==0 && $date_changed_flag==0) {
if ( $line =~ s/^Date:( |\t)/X-Original-Date: / ) {
$date_changed_flag=1; print PIPE "Date: $current_date\n";
}
}
print PIPE $line;
}
PS. кстати, кто знает нормальное решение для постфикса изменить дату в письмах на текущаю локальную? А то через перл как-то слишком уж жирно :(